Чим корисні команди командного рядка на Mac OS X?


58

За потоками Windows та Linux , які команди ви вважаєте найбільш корисними в Mac OS X Server (або клієнті)?


Погоджено, цей сайт здається набагато негативнішим, ніж стаціонарний потік, люди здаються готовими "знизити" будь-яку посаду, яку вони не вважають, що відповідає їх стандартам - цього достатньо, щоб я пішов.
Chopper3

thx, чоппер3. можливо, це було проголошено за те, що він пов'язаний з Mac. я можу зрозуміти, не хочу бачити багато яблучних речей, але насправді просто додаю / ігнорую "mac" до своїх тегів, і це відсортовано
ім'я користувача

2
На цьому сайті є багато специфічних для яблук речей, людям тут просто подобається негативно.
Chopper3

2
можна очікувати, я гадаю, що ми - sysadmins :-)
ім'я користувача

1
Мені подобається ваше ім'я користувача ... ім'я користувача :)
Chopper3

Відповіді:


28
say "some text"

Відомо, що використовується для повернення людей у ​​свої квартири , sayбере ваші аргументи та читає їх вголос через аудіопристрій.


4
+1 для вмісту xkcd
ім'я користувача

4
І це дуже добре - перегляньте macosxhints.com/comment.php?mode=view&cid=107211 список фраз, таких як Мене звати доктор Сміт, і я живу на Сміт-Доктор , солдат вирішив залишити свій десерт в пустеля і Оскільки немає часу , як справжнє, він думав , що це був час , щоб подати цей :-)
Арьян

23

pbpasteта pbcopyвзаємодіяти з картоном (буфер обміну).

Приклади:

# copies the directory listing
ls -l | pbcopy

# get pasteboard lines containing foo and save them in a_file
pbpaste | grep foo > a_file

Я думаю, що вони за замовчуванням використовують кодування макромана, тому, якщо ви хочете UTF-8 (що ви робите), вам слід переглянути ці посилання:


19
fs_usage

Дозволяє стежити за діяльністю файлової системи. Зручно, якщо ви хочете побачити, які файли створює деякий додаток. Див. Http://rentzsch.com/macosx/fs_usageIntro для отримання додаткових пояснень.


Тепер, коли Rentzsch перемістив свій блог до Tumblr, не перевидаючи свої архіви, тут можна прочитати його пояснення цього чудового інструменту: web.archive.org/web/20091231090628/http://rentzsch.com/macosx/…
Джо Керролл

Також варто прочитати: cocoadev.com/index.pl?FsUsageTips
Джо Керролл

17
open .

Відкриває вікно пошуку в поточному робочому каталозі.


для запуску інших додатків використовуйте щось на кшталт: open -a "монітор активності"
ім'я користувача

Freunde schöner Götterfunke ... Я маю на увазі, дякую, дякую, дякую !! Я шукав Windows, як "старт". і це воно!
Даніель Шнеллер

"відкрите ім'я файлу" діє так само, як подвійне клацання по файлу в Finder - він запустить відповідну програму і відкриє файл.
Клінтон Блекмор

13

З командного рядка мені подобається можливість:

Створіть та запишіть "універсальний" CD / DVD:

$ mkisofs -allow-multidot -allow -ading-dots -d -hide-rr-переміщений \
-l -joliet-long -R -T -v \
-V VOLUME_NAME -o output.iso root-cd-dir /
$ hdiutil burn -noverifyburn output.iso

Створіть ISO-образ із CD / DVD:

$ diskutil unmountDisk / dev / disk2s0
$ dd, якщо = / dev / disk2s0 of = cdname.iso bs = 32m

Здатність забути команду otool, коли я шукаю ldd:

$ alias ldd = 'printf "Відправлення команди до \' \ '' otool -L \ '\' '- \ n" && otool -L'

Змонтуйте образ диска з командного рядка:

$ hdid diskimage.dmg (або .iso)

Використовуйте попередній перегляд для доступу до чоловічої сторінки:

$ man -t rsync | відкрити -f -a /Applications/Preview.app

1
+1 для сторінки сторінки / підказки для попереднього перегляду Дивовижно.
Сем Галіцке

12

Утиліта CLI в аеропорту - моя улюблена. Дивіться http://osxdaily.com/2007/01/18/airport-the-little- unknown-command-line-wireless-utility/ . Він покаже вам такі деталі, як рівень сигналу, рівень шуму та BSSID AP, з яким ви пов’язані.


1
Класно. Наприклад: /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -Я показує детальну інформацію про якість сигналу, шум, безпеку та інші атрибути мережі WiFi.
ім’я користувача

11
ipconfig getpacket en0

Відображає конфігурацію мережі для основного інтерфейсу Ethernet (en0).

Якщо ви звикли до Windows і думаєте, що "ipconfig" порушений - це не ;-) Вам просто потрібно додати пару аргументів


4
Звичайно, якщо ви звикли до Linux, "ifconfig en0" працює так само добре.
Тім

Або використовувати, en1якщо ви бездротові.
Dana Sane

11
drutil tray open

Безцінне (понад ssh), коли немає підключеної клавіатури, оскільки кнопка викидання на оптичні приводи Apple недоступна ззовні.


11

Не можна сказати достатньо, "відкрито" - це чудово. Ви можете відкривати документи в їхній програмі GUI, а також можете вибрати програму GUI з -a. Наприклад,

open -a vlc movie.avi

відкриє VLC і скаже, щоб він завантажив movie.avi у ваш поточний редактор.

open movie.avi

відкрив би його з будь-якою програмою за замовчуванням. Якщо ви просто хочете відкрити програму, ви також можете це зробити:

open -a system\ preferences

запустить Налаштування системи. Ви також можете відкрити URL-адреси:

open vnc://myserver:5900

відкриє Спільний доступ до екрана та підключиться до myserver.

Перевірити

man open

щоб побачити всі прапори, які ви можете використовувати.



9
networksetup

Налаштуйте все, що ви знайдете на панелі налаштувань мережі, у системних налаштуваннях у командному рядку. Полегшує написання сценаріїв або робити речі віддалено набагато простіше.


8
sudo changeip -checkhostname

Перевіряє, що роздільна здатність DNS вперед і назад є здоровою, і часто показує вам команду, яку ви можете використовувати для усунення проблеми. Якщо в ньому написано "імена збігаються, нічого не можна змінити" ти в хорошій формі. Життєво важливо, якщо ви коли-небудь зміните мережу конфігурації вашого сервера Також важливо використовувати це перед тим, як просувати ваш сервер до Master Master Open.


8
dscacheutil -flushcache

Мені здається, що я використовую цю групу для очищення кешу DNS на 10.5+.


Зверніть увагу, це працює лише в Mac OS X 10.5
Chealion

Я щойно перевірив, він також працює на 10.6.
Брюс Маклеод

Як я вважаю, мені доводиться запускати це найчастіше, однак не пам’ятаю, що потрібно промивати кеш DNS Linux або Windows. Можливо, OS X особливо агресивна при кешуванні DNS?
петертонолі


7
last

показує, хто ввійшов у систему, як довго вони її використовували та коли система була перезапущена.

Ось зразок результату:

clinton   ttys000                   Thu May 28 22:33   still logged in
clinton   console                   Thu May 28 08:05   still logged in
reboot    ~                         Thu May 28 08:05 
shutdown  ~                         Wed May 27 20:15 
clinton   console                   Wed May 27 17:33 - 20:15  (02:42)
...

wtmp begins Thu May 14 09:26 


7
 lsof

список відкритих файлів

Зручно, коли ви хочете вийняти USB-накопичувач, і їм повідомляють, що він використовується, і будь ласка, закрийте всі програми та повторіть спробу.

$ sudo lsof /Volumes/CLINTON
COMMAND   PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
bash    55966 clinton  cwd    DIR  14,12    16384    2 /Volumes/CLINTON
lsof    56042    root  cwd    DIR  14,12    16384    2 /Volumes/CLINTON
lsof    56043    root  cwd    DIR  14,12    16384    2 /Volumes/CLINTON

У цьому випадку я cdперейшов на диск, і тому bash отримав доступ до гучності.

Зауважте, що якщо ви бачите записи 'mds', це означає, що прожектор індексує накопичувач.


7

Посібник з управління командними рядками, який виклав Apple, є безцінним.

Гуглінг для "mac адміністрування командного рядка" дає хороші результати.

Адміністрація командного рядка для Mac OS X 10.5 , 10.4 та 10.3 .

Інші корисні посібники розміщені на веб- сайті http://www.apple.com/server/macosx/resources/ .



6
osascript -e 'tell application "AppName" to quit'

Дозволяє вийти з програми з оболонки.

osascript -e 'tell application "Finder" to sleep'

Останній рядок сценарію з довгими оболонками переводить Mac у режим сну, коли виконано сценарій. У мене це iSleep.

pbpaste | script.sh |pbcopy

бере вміст картону (редагувати-> копіювати) та передає його до script.sh. Результати поміщаються на папку для редагування-> вставки в документ.


5
mcxquery

це дозволить вам побачити, які параметри MCX (керованого клієнта) застосовуються до клієнтської машини.

[Еквівалент GUI - це перейти до System Profiler, і в розділі Програмне забезпечення натисніть "Керований клієнт".]

Корисно визначити, чи управляється машиною, і побачити, чи отримує вона очікувані налаштування.



4
system_profiler

Дайте ті самі результати, що і ви, коли вибираєте About This Mac -> Більше інформації, лише в командному рядку.

Біг

system_profiler -usage

або переглянувши сторінку чоловіка, ви дасте поради щодо її використання.

Кілька прикладів:

system_profiler -xml > MySystem.spx
# and later,
open MySystem.spx  # or just double click on it in the Finder

це скине системний профіль у файл, який згодом можна переглянути на іншій машині.

system_profiler SPUSBDataType

Повідомляє про всі ваші USB-пристрої (включаючи їх ідентифікатори постачальника та продукту, які можуть допомогти відстежувати драйвери).

system_profiler SPUSBDataType | grep "Product ID" -c

підкаже, скільки USB-пристроїв підключено (включаючи внутрішні USB-пристрої), що корисно, щоб комп'ютер бачив пристрій (або, скажімо, Parallel схопив його чи він мертвий.) [Зверніть увагу, що в Додаток System Profiler GUI, ви можете вибрати меню -> Оновити в меню, щоб оновити список; це може бути просто простіше.]

system_profiler SPHardwareDataType

отримає основну інформацію про обладнання (корисне для відстеження активів) та

system_profiler SPHardwareDataType | grep Serial

дасть вам серійний номер машини.




4
dns-sd -B _ssh
dns-sd -B _rfb
dns-sd -B _services._dns-sd._udp

Список серверів реклами в Bonjour. Остання пропозиція перераховує типи послуг, які ви можете перелічити. Список в прямому ефірі, натисніть Ctrl-C, коли ви побачили достатньо.

Ця ж команда є в останніх Linux і в Bonjour SDK для Windows.


4
opendiff file1 file2

Запускає FileMerge (графічний пристрій, diffщо постачається з інструментами Apple Developer Tools) на file1та file2.


4
sudo opensnoop

у Леопарді та новіших версіях - повідомляє, які обробляють відкриті файли, успішно чи ні. Ви можете попросити його переглянути всі файли, які відкриваються в системі, за допомогою певного процесу, або якщо якийсь процес відкриває певний файл, з різними видами часових позначок, і показати, чи трапляються помилки.

Ось ще кілька деталей:

opensnoop - сценарій dtrace ; Є багато інших в / usr / bin, які дивляться на такі речі, як система, яка викликає процес, який процес створює, і що він / виходить. Запустіть apropos DTraceсписок і перегляньте детальні сторінки на детальних сторінках.


Я дізнався про opensnoop, коли намагався діагностувати, чому Comic Life Magiq 1.1 вийшов з ладу на ОС 10.5.8 для користувачів з мережевими обліковими записами.

Я бігав (кілька разів, на різних акаунтах, через ssh):

sudo opensnoop -e -n Comic > output.txt

Останній файл, відкритий користувачами мережі, був приблизно таким (із повним контуром):

/Network/Servers/.../username/Library/Icons/WebpageIcons.db

що нагадувало мені, що Safari 5.0 виходить з ладу для користувачів мережі, і ми працювали навколо цього, керуючи налаштуваннями не кешувати файлові файли, або перенаправляючи файл. Apple, очевидно, виправила проблему в Safari 5.0.1, і коли я вчора перейшов на Safari 5.0.2, він виправив аварію для користувачів Comic Life Magiq.


3
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent

Запускає послугу віддаленого робочого столу (корисно, якщо у вас є лише SSH доступ, але ви хочете зробити щось за допомогою GUI на вашому клієнтському Mac). Докладніші параметри див. На веб-сторінці: http://support.apple.com/kb/HT2370


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.