Установка инструментов командной строки GoogleCL

Читай новости Mac911.RU в удобном и популярном формате RSS Условия размещения рекламы на Mac911.RU|iPod911.RU

Google предлагает набор инструментов командной строки, позволяющих получать доступ к значительной части своих сервисов. В основном инструментарий написан на Python и поставляется как «open source», легко портируется и запускается на Mac. В настоящее время поддерживаются следующие сервисы:

Blogger * Calendar * Contacts * Docs * Picasa * Youtube

Потребуется MacPorts; в системе должны быть установлены Apple Developer Tools для компиляции программ. Если у вас уже установлен MacPorts, запустите в Терминале следующие команды, которые обновят MacPorts до последней версии и одновременно установят утилиты GoogleCL:

Далее

Получение информации о сетевых соединениях с использованием скрипта shell

Читай новости Mac911.RU в удобном и популярном формате RSS Условия размещения рекламы на Mac911.RU|iPod911.RU

Хотите быстро получать информацию о своем кабельном (en0) и беспроводном (en1) соединениях без необходимости каждый раз открывать панель Network System Preference? Без проблем! Просто скопируйте нижеприведенный сценарий в любой текстовый редактор и сохраните его как shell-скрипт (например, getnet.sh) где-нибудь в $PATH. Затем убедитесь, что скрипт исполняемый, запустив в Терминале chmod 0755 /path/to/getnet.sh



#! /bin/bash

QUERY0="$(ipconfig getpacket en0)";
QUERY1="$(ipconfig getpacket en1)";
MAC0="$(ifconfig en0 | grep ether | awk '{print $2}')";
MAC1="$(ifconfig en1 | grep ether | awk '{print $2}')";

echo $QUERY0 | grep 'BOOTREPLY' > /dev/null;
ET=$?;

echo $QUERY1 | grep 'BOOTREPLY' > /dev/null;
WI=$?;

echo " ";

if [ $ET -eq 0 ] || [ $WI -eq 0 ]
 then
  PUBLIC="$(curl -s http://checkip.dyndns.org | awk '{print $6}' | awk 'BEGIN {FS = "<"} {print $1}')";   echo "   Public IP: $PUBLIC"; fi; echo "   Hostname: $HOSTNAME"; echo " "; echo "Wired Ethernet (en0)"; echo "-----------------------"; if [ $ET -eq 0 ]  then   echo $QUERY0 | grep 'yiaddr = 0.0.0.0' > /dev/null;
  AT=$?;
  if [ $AT -eq 0 ]
   then
    IP="$(echo $QUERY0 | sed 's/.*ciaddr = \([[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\).*/\1 (Static)/')";
   else
    IP="$(echo $QUERY0 | sed 's/.*yiaddr = \([[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\).*/\1 (DHCP)/')";
  fi;
  SUBNET="$(echo $QUERY0 | sed 's/.*subnet_mask (ip): \([[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\).*/\1/')";
  ROUTER="$(echo $QUERY0 | sed 's/.*router (ip_mult): {\([^}]*\)}.*/\1/')";
  DNS="$(echo $QUERY0 | sed 's/.*domain_name_server (ip_mult): {\([^}]*\)}.*/\1/')";
  SEARCH="$(echo $QUERY0 | sed 's/.*domain_name (string): \(.*\) [[:alpha:]].*/\1/')";
  SPEED="$(ifconfig en0 | grep media: | sed 's/.*(//' | sed 's/ .*//' | sed 's/baseT/ MBit\/s/')";
  echo "  IP Address: $IP";
  echo "  Subnet Mask: $SUBNET";
  echo "    Router: $ROUTER";
  echo "  DNS Server: $DNS";
  echo "Search Domains: $SEARCH";
  echo "  MAC Address: $MAC0";
  echo "     Speed: $SPEED";
elif ! [ $ET -eq 0 ]
 then
  echo "  IP Address: inactive";
  echo "  MAC Address: $MAC0";
fi;

echo " ";
echo "Wireless Ethernet (en1)";
echo "-----------------------";

if [ $WI -eq 0 ]
 then
  echo $QUERY1 | grep 'yiaddr = 0.0.0.0' > /dev/null;
  AT=$?;
  if [ $AT -eq 0 ]
   then
    IP="$(echo $QUERY1 | sed 's/.*ciaddr = \([[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\).*/\1 (Static)/')";
   else
    IP="$(echo $QUERY1 | sed 's/.*yiaddr = \([[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\).*/\1 (DHCP)/')";
  fi;
  SUBNET="$(echo $QUERY1 | sed 's/.*subnet_mask (ip): \([[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\.[[:digit:]]\{1,3\}\).*/\1/')";
  ROUTER="$(echo $QUERY1 | sed 's/.*router (ip_mult): {\([^}]*\)}.*/\1/')";
  DNS="$(echo $QUERY1 | sed 's/.*domain_name_server (ip_mult): {\([^}]*\)}.*/\1/')";
  SEARCH="$(echo $QUERY1 | sed 's/.*domain_name (string): \(.*\) [[:alpha:]].*/\1/')";
  SPEED="$(/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I | grep lastTxRate: | sed 's/.*: //' | sed 's/$/ MBit\/s/')";

Пример вывода данных в результате запуска скрипта:



Public IP: 123.456.78.90
Hostname: CWB-MacBook.local

Wired Ethernet (en0)
-----------------------
IP Address: inactive
MAC Address: aa:bb:cc:dd:ee:ff

Wireless Ethernet (en1)
-----------------------
IP Address: 192.168.0.196 (DHCP)
Subnet Mask: 255.255.255.0
Router: 192.168.0.1
DNS Server: 192.168.0.1
Search Domains: woh.rr.com
MAC Address: 00:11:22:33:44:55
Speed: 117 MBit/s

macosxhints.com (obearsstate)

Далее

Terminal: конвертировать docx в doc формат старых версий Office

Читай новости Mac911.RU в удобном и популярном формате RSS Условия размещения рекламы на Mac911.RU|iPod911.RU

Часто бывает так, что документ прислали в новом формате MSOffice (docx), а прочесть его нечем. Пользователям Leopard и Snow Leopard не составит никакого труда просто конвертировать документ docx в привычный doc. Откройте окно Терминала; перейдите к тому файлу docx, который вы желаете конвертировать и введите в Терминале следующую команду:

textutil -convert doc myFile.docx

myFile.docx – файл, который вы хотите конвертировать. Файл myFile.doc появится в той же папке, в которой располагается исходный документ. Полный корректный путь к файлу можно получить, захватив его в Finder и перетащив в окно Терминала. Затем подставить вместо myFile.docx полный путь к документу без кавычек.

macosxhints.com

Далее

Automator: двухстороннее сканирование в PDF

Читай новости Mac911.RU в удобном и популярном формате RSS Условия размещения рекламы на Mac911.RU|iPod911.RU

Если у вас есть сканер с автоподачей листов, то было бы удобно сначала сканировать четные, а потом нечетные страницы. Я создал рабочий процесс Automator, позволяющий принимать страницы в таком порядке, а затем передавать их в документ PDF в правильной последовательности.

macosxhints.com (zeigerpuppy)

Требуется PDFtk: скачать скомпилированную версию PDFtk, а также сам рабочий процесс. Проверено только в версии Mac OS X 10.6.2. Не уверен, что будет работать под Леопардом (10.5.x).  Под катом иллюстрация, подробно описывающая работу сценария.

Далее

Terminal: устараняем зависание или долгую загрузку Console.app

Читай новости Mac911.RU в удобном и популярном формате RSS Условия размещения рекламы на Mac911.RU|iPod911.RU

Если вы сталкиваетесь с зависанием Терминала или же он запускается очень долго, проблема может быть в накоплении множества лог-файлов. Чтобы проверить, так ли это, достаточно заглянуть в /private/var/log/asl. Не исключено, что у вас там уже сотни логов. Если эти журналы вам не нужны, то их можно удалить простой командой Терминала:

sudo rm -f /private/var/log/asl/*

Вот и всё, Терминал снова шустро запускается и не тормозит.

macosxhints.com

Далее