it-swarm-ko.tech

Mac OS X에서 유용한 명령 줄 명령은 무엇입니까?

WindowsLinux 스레드에 따라 Mac OS X Server (또는 클라이언트)에서 가장 유용한 명령은 무엇입니까?

58
username
say "some text"

사람들을 다시 아파트로 데려다주는 , say에 널리 사용됩니다. 인수를 취해 오디오 출력 장치를 통해 소리내어 읽습니다.

28
Tim

pbpastepbcopy는 페이스트 보드 (일명 클립 보드)와 상호 작용합니다.

예 :

# copies the directory listing
ls -l | pbcopy

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

나는 기본적으로 macroman 인코딩을 사용한다고 생각하므로 UTF-8 (당신이하는)을 원한다면 다음 링크를 확인해야합니다.

23
kch
fs_usage

파일 시스템 활동을 모니터 할 수 있습니다. 일부 앱에서 어떤 파일이 생성되는지 확인하려면 편리합니다. 자세한 설명은 http://rentzsch.com/macosx/fs_usageIntro 를 참조하십시오.

19
username
open .

현재 작업중인 디렉토리에서 Finder 윈도우를 엽니 다.

17
richardhoskins

커맨드 라인에서 나는 다음과 같은 기능을 좋아한다.

"범용"CD/DVD 작성 및 굽기 :

 $ mkisofs-허용-멀티 도트-허용-도트 -d-숨기기 -rr- 이동\
-l -joliet-long -R -T -v\
- V VOLUME_NAME -o output.iso root-cd-dir /
$ hdiutil burn -noverifyburn output.iso 

CD/DVD에서 ISO 이미지를 만듭니다.

 $ diskutil unmountDisk /dev/disk2s0
$ dd if =/dev/disk2s0 of = cdname.iso bs = 32m 

Ldd를 찾을 때 otool 명령을 잊을 수 있습니다.

 $ alias ldd = 'printf "\'\ ''otool -L\'\' '-\ n에 명령 보내기 && otool -L'

명령 행에서 디스크 이미지를 마운트하십시오.

 $ hdid diskimage.dmg (또는 .iso) 

미리보기를 사용하여 매뉴얼 페이지에 액세스하십시오.

 $ man -t rsync | -f -a /Applications/Preview.app
을여십시오.
13
Gary Chambers

'공항'CLI 유틸리티는 내가 가장 좋아하는 것입니다. http://osxdaily.com/2007/01/18/airport-the-little-known-command-line-wireless-utility/ 를 참조하십시오. 신호 레벨, 노이즈 레벨 및 연결된 AP의 BSSID와 같은 세부 정보가 표시됩니다.

12
Jason Luther
drutil tray open

Apple 광학 드라이브의 케이스 외부에서 액세스 할 수 없기 때문에 키보드가 연결되지 않은 경우 ssh를 통해 매우 중요합니다.

11
James
ipconfig getpacket en0

기본 이더넷 인터페이스 (en0)의 네트워크 구성을 표시합니다.

Windows에 익숙하고 "ipconfig"가 깨 졌다고 생각되면 ;-)가 아닙니다. 몇 가지 인수 만 추가하면됩니다.

11
username

충분히 말할 수는 없습니다. "열기"가 좋습니다. GUI 프로그램에서 문서를 열 수 있으며 -a를 사용하여 GUI 프로그램을 선택할 수도 있습니다. 예를 들어

open -a vlc movie.avi

vLC를 열고 현재 디렉토리에 movie.avi를로드하도록 지시합니다.

open movie.avi

기본 프로그램이 무엇이든간에 열 것입니다. 프로그램을 열려면 다음을 수행하십시오.

open -a system\ preferences

시스템 환경 설정을 실행합니다. Urls도 열 수 있습니다 :

open vnc://myserver:5900

화면 공유가 열리고 myserver에 연결됩니다.

체크 아웃

man open

사용할 수있는 모든 플래그를 볼 수 있습니다.

11
w00t
softwareupdate

CLI에서 Mac을 업데이트하십시오.

10
dvoita
networksetup

명령 행에서 시스템 환경 설정의 네트워크 환경 설정 분할 창에있는 모든 것을 구성하십시오. 스크립트를 작성하거나 원격으로 작업을 수행합니다 much 더 쉽습니다.

9
Chealion
Sudo changeip -checkhostname

정방향 및 역방향 DNS 확인이 정상인지 확인하고 종종 문제를 해결하는 데 사용할 수있는 명령이 표시됩니다. "이름이 일치하면 변경할 것이 없습니다"라고 표시되면 상태가 양호합니다. 서버의 네트워크 구성을 변경 한 경우 중요합니다. 서버를 Open Directory Master로 승격시키기 전에이를 사용하는 것도 중요합니다.

8
username
dscacheutil -flushcache

10.5 이상에서 하나의 힙을 사용하여 DNS 캐시를 플러시합니다.

8
Bruce McLeod
ping 224.0.0.1

Ping all 서브넷의 장치

7
username
srm

보안 삭제를위한 명령 행 버전.

7
Jauder Ho
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
Clinton Blackmore
 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

이 경우 드라이브에 cded가있어서 bash가 볼륨에 액세스하고있었습니다.

'mds'항목이 표시되면 스포트라이트가 드라이브를 색인화하고 있음을 의미합니다.

7
Clinton Blackmore

Apple에 의해 작성된 Command-Line Administration 가이드)는 매우 중요합니다.

"command line administration mac" 에 대한 인터넷 검색은 좋은 결과를 제공합니다.

Mac OS X의 명령 줄 관리 10.5 , 10.410. .

다른 유용한 안내서는 http://www.Apple.com/server/macosx/resources/ 에 있습니다.

7
Clinton Blackmore
osascript -e 'tell application "AppName" to quit'

셸에서 응용 프로그램을 종료 할 수 있습니다.

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

긴 쉘 스크립트의 유용한 마지막 줄은 스크립트가 완료되면 Mac을 잠자기 상태로 만듭니다. iSleep에 대한 별칭이 있습니다.

pbpaste | script.sh |pbcopy

pasteboard의 내용을 가져 와서 (edit-> copy) script.sh로 파이프합니다. 결과는 페이스트 보드에 저장되어 편집하여 문서에 붙여 넣을 수 있습니다.

6
sal

http://www.commandlinefu.com

특히 Mac 리소스는 아니지만 터미널 아이콘을 사용하고 있으며 실제로 유용한 명령 목록이 대부분 작동합니다.

6
Clinton Blackmore
mcxquery

그러면 클라이언트 시스템에 어떤 종류의 MCX (Managed Client) 설정이 적용되는지 확인할 수 있습니다.

[GUI에 해당하는 것은 시스템 정보보기로 이동 한 후 소프트웨어 섹션에서 "관리되는 클라이언트"를 클릭하십시오.]

컴퓨터가 관리되는지 확인하고 원하는 설정을 가져 오는지 확인하는 것이 좋습니다.

5
Clinton Blackmore
sw_vers

현재 설치된 버전 및 Mac OS X 빌드를 표시합니다.

5
username
df -h

현재 모든 디스크에 몇 개의 디스크 공간이 있는지 확인합니다.

4
hendrasaputra
opendiff file1 file2

FileMerge (file1file2에서 Apple 개발자 도구)와 함께 제공되는 그래픽 diff)를 실행합니다.

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

Bonjour에서 광고하는 서버를 나열하십시오. 마지막 제안에는 나열 할 수있는 서비스 유형이 나열되어 있습니다. 리스팅이 게시되었습니다. 충분히봤을 때 Ctrl-C를 누르십시오.

최근 Linux 및 Windows 용 Bonjour SDK에서도 동일한 명령이 사용됩니다.

4
James
system_profiler

명령 행에서만이 매킨토시에 관하여-> 추가 정보를 선택할 때와 동일한 결과를 제공합니다.

달리는

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 장치 (공급 업체 및 제품 ID를 포함하여 드라이버 추적에 도움이 됨)에 대해 알려줍니다.

system_profiler SPUSBDataType | grep "Product ID" -c

몇 개의 USB 장치가 연결되어 있는지 (내부 USB 장치 포함) 컴퓨터에 장치가 있는지 (또는 Parallel이 장치를 잡았는지 또는 죽었는지) 확인하는 데 유용합니다. 시스템 정보보기 GUI 앱의 경우 메뉴에서보기-> 새로 고침을 선택하여 목록을 업데이트 할 수 있습니다. 더 쉬울 수도 있습니다.]

system_profiler SPHardwareDataType

기본 하드웨어 정보 (자산 추적에 유용한)를 제공합니다.

system_profiler SPHardwareDataType | grep Serial

기계의 일련 번호를 알려줍니다.

4
Clinton Blackmore
Sudo opensnoop

leopard 이상에서는 열린 파일을 성공적으로 처리하는지 여부를보고합니다. 시스템 전체에서, 특정 프로세스에 의해 열려있는 모든 파일을 보거나, 프로세스가 지정된 파일을 다른 종류의 타임 스탬프와 함께 열고 있는지 확인하고 오류가 발생하는지 여부를 표시하도록 요청할 수 있습니다.

자세한 내용은 다음과 같습니다.

opensnoop은 dtrace 스크립트입니다./usr/bin에는 프로세스가 어떤 시스템 호출을하고 있는지, 어떤 프로세스를 만들고 있는지, 어떤 I/O를 수행하는지 등을 볼 수있는 다른 많은 것들이 있습니다. 운영 apropos DTrace 목록을 보려면 매뉴얼 페이지에서 자세한 내용을 확인하십시오.


네트워크 계정이있는 사용자를 위해 Comic Life Magiq 1.1이 OS 10.5.8에서 충돌하는 이유를 진단하기 위해 고심 할 때 opensnoop에 대해 알게되었습니다.

나는 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 사용자의 충돌 문제가 해결되었습니다.

4
Clinton Blackmore
ifconfig en0 ether 00:00:00:00:00:00

다음에 다시 부팅 할 때까지 MAC 주소 변경 (스푸핑)

4
username

scutil --dns

DNS 확인 순서를 표시합니다. 네트워크 설정을 만들거나 디버깅 할 때 유용합니다.

3
romant
lsof -i 

열린 인터넷 포트를 나열합니다. 샘플 출력 :

COMMAND     PID    USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME
SystemUIS   223 clinton   11u  IPv4 0x3e21b08      0t0  UDP *:*
ARDAgent    262 clinton   16u  IPv4 0x3e21be0      0t0  UDP *:net-assistant
ARDAgent    262 clinton   18u  IPv4 0x5f01a68      0t0  TCP *:net-assistant (LISTEN)
AppleVNCS   263 clinton    4u  IPv6 0x3e274bc      0t0  TCP *:vnc-server (LISTEN)
Opera     48365 clinton   20u  IPv4 0x5f01e64      0t0  TCP WTD-Staff-BlackmoreC:57094->stackoverflow.com:http (ESTABLISHED)
Opera     48365 clinton   23u  IPv4 0x5b12a68      0t0  TCP WTD-Staff-BlackmoreC:57095->stackoverflow.com:http (ESTABLISHED)

모든 사용자가 포트를 열려면 Sudo를 사용하고 플래그 -n-P는 이름 확인 및 포트 이름을 비활성화하고 대신 숫자를 제공합니다.

3
Clinton Blackmore
Sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent

원격 데스크톱 서비스를 시작합니다 (SSH 액세스 권한 만 있지만 클라이언트 Mac에서 GUI를 사용하여 무언가를하려는 경우에 유용합니다). 자세한 옵션은 다음을 참조하십시오 : http://support.Apple.com/kb/HT237

3
username
drutil eject

cD를 꺼냅니다.

3
Clinton Blackmore

파일에 어떤 종류의 줄 끝이 있는지 알고 싶다면 다음을 실행하십시오.

file /path/to/your-file

전의:

$ file imports/sample-students.txt 
imports/sample-students.txt: ASCII text, with CR line terminators
3
Clinton Blackmore

이 청중을위한 약간의 보행자, 의심의 여지가 없지만 다음을 사용합니다.

화면 캡처 -i -c

화면에서 내가 원하는 것을 잡으려면 정말 편리하고 그랩이 잡을 수없는 일을합니다.

2
Dave

루트 사용자를 활성화하지 않고 루트 쉘을 얻습니다 (Apple 자체는 때때로 "괴짜"작업을 수행하기 위해, 즉 시스템 전체 언어를 설정하기 위해 문서에서 필요합니다)

Sudo bash

이렇게하면 Sudo 명령으로 모든 명령을 추가 할 필요없이 루트로 원하는 모든 작업을 수행 할 수있는 루트 셸이 제공됩니다.

이것은 위험 할 수 있지만 우리는 시스템 관리자이며 우리가 무엇을하고 있는지 알고 있습니까? :)

2
drAlberT

일반적인 유닉스 용의자 외에도 다음과 같은 유용한 정보가 있습니다.

  • dsconfigad-Active Directory 설정을 편집하고 컴퓨터를 바인딩합니다

  • 기본값-환경 설정 편집

  • plutil- plist 를 텍스트로 변환하거나 텍스트에서 변환

  • softwareupdate-명령 행에서 소프트웨어 업데이트 실행

  • 설치 프로그램-명령 행에서 패키지 설치

  • 네트워크 설정-컴퓨터 이름과 같은 다양한 것을 설정하고 가져옵니다.

이것들과 일반적인 유닉스 것들을 마스터하면 명령 행에서 Mac 관리에 필요한 모든 것이 있습니다.

2
Honestpuck

Time Machine이 NAS에 백업 할 수있게하는 방법.

defaults write com.Apple.systempreferences TMShowUnsupportedNetworkVolumes 1

MAC 주소 찾기

ifconfig en0 | grep ether | sed s/://g | sed s/ether//

Sparsebundle을 작성하여 NAS로 복사하는 명령

Sudo hdiutil create -nospotlight -library SPUD -size 160g -fs "Case-sensitive Journaled HFS+" -type SPARSEBUNDLE -volname "<VOLNAME>" ./<HOSTNAME>_<MAC_ADDRESS>.sparsebundle

ReadyNAS에 백업하는 매력처럼 작동합니다.

2
Jauder Ho

프리웨어 타사 도구이지만

edit

정말 편리합니다. TextWrangler 를 처음 실행할 때 선택적으로 설치할 수있는 명령 줄 도구입니다. [다른 텍스트 편집기 (BBEdit, TextMate)는 비슷한 것을 제공합니다.]

edit path/to/somefile

TextWrangler에서 파일을 열고 일반적으로 편집 권한이없는 경우 인증 할 수 있습니다. (ssh 세션에서도 수행 할 수 있으며, 로그인 한 그래픽 사용자를 위해 열립니다).

더 좋은 방법은 파이프를 넣을 수 있다는 것입니다.

lsof -i | edit

예를 들어, 열린 네트워크 연결을 표시하고 TextWrangler에서 열면 쉽게 검색 (및 스크롤) 할 수 있습니다.

2

이 질문은 NIX 관리자가 살 수없는 도구에 관한 질문 와 상당히 겹칩니다. Mac OS X 용 많은 명령 줄 도구에는 df, duwhich와 같은 UNIX 루트가 있습니다. 그러나 osascript, open, pbcopy, pbpastesay와 같이 명백한 UNIX 등가가없는 주목할만한 예외가 있습니다.

2
las3rjock

killall -9 appname 앱을 강제 종료합니다. 활동 모니터에 들어갈 수없는 경우에 매우 유용합니다.

2
al.

ipconfig는 때때로 유용합니다 :

인터페이스에서 현재 IP 주소 얻기 :

$ ipconfig getifaddr en1
10.110.2.25

마지막으로받은 DHCP 정보 얻기 :

$ ipconfig getpacket en1
op = BOOTREPLY
htype = 1
flags = 0
hlen = 6
Hops = 0
xid = 143857879
secs = 0
ciaddr = 0.0.0.0
yiaddr = 10.110.2.25
siaddr = 0.0.0.0
giaddr = 0.0.0.0
chaddr = 00:aa:bb:cc:dd:ee
sname = 
file = 
options:
Options count is 7
dhcp_message_type (uint8): ACK 0x5
server_identifier (ip): 1.1.1.1
lease_time (uint32): 0xe10
router (ip_mult): {10.110.0.1}
domain_name_server (ip_mult): {1.1.1.1, 1.1.1.2}
subnet_mask (ip): 255.255.252.0
end (none): 
2
dexedrine
ifconfig | grep cast

iP 주소를 얻는 데 좋습니다.

ifconfig en1 | grep eth

mAC 주소를 얻는 데 효과적입니다. en1을 사용하면 공항의 MAC 주소가 (거의 항상) 사용됩니다. 이는 알려진 장치 만 무선 네트워크에 허용되는 경우에 편리합니다. 반대로 내장 이더넷 포트 인 en0을 사용하면 다음과 같이 Open Directory에서 시스템을 찾을 수 있습니다.

ldapsearch -x -h odm -b "cn=computers,dc=odm,dc=pretendoco,dc=com" "macAddress=00:0d:93:b5:82:88"

(서버가 'odm'이고 영역이 ODM.PRETENDCO.COM이라고 가정).

2
Clinton Blackmore

방금 Mac OS에서 누락 된 seq 명령 대신 사용할 수있는 멋진 bash 구성이 있음을 알았습니다.

echo { 18..21 }
2
geewiz
sqlite3 foo.db

대화식 SQLite 세션을 시작합니다. foo.db가 없으면 작성됩니다.

1
richardhoskins

뒤 -d 1 -h

사람이 읽을 수있는 형식으로 현재 디렉토리의 디스크 사용량 통계를 표시합니다.

남자 [명령]

가장 많이 사용되는 명령 중 하나입니다. 다른 모든 것을 사용하는 방법을 알려줍니다.

1
Peter Hoven

내가 보지 않은 OS X 관련 사항 :

mdfind는 명령 행에서 Spotlight 검색 색인을 사용하므로 검색 풀다운을 사용하지 않고 전체 텍스트 검색을 수행 할 수 있습니다.

networksetup -는 그것이 지원하는 모든 미친 문법을 보여줄 것입니다; 이것은 네트워크 환경 설정 분할 창에 해당하는 명령 행입니다.

Sudo launchctl list-실행중인 launchctl 작업을 보여줍니다. launchctl stop X.XX.X는 현재 실행중인 영구 프로세스 인스턴스를 '중지'(킬)한다는 것을 기억하십시오. 실행을 멈추게하려면 launchctl unload /System/Library/LaunchDaemons/X.XX.X.plist를 사용하십시오.

1
eric sorenson
Sudo slapconfig -destroyldapserver

LDAP 복제본을 독립형으로 강등시킵니다. Open Directory Master가 잘못 구성된 경우 Server Admin을 사용하여 Open Directory Replica를 강등시키려는 시도가 실패합니다 (예 : Replica 서버가 강등을 거부 할 수 있음). 이 경우 slapconfig를 사용하여 강제로 강등시킬 수 있습니다.

1
username
 which program

프로그램의 경로를 검색하고 전체 경로를 지정하지 않고 프로그램을 실행하면 호출 된 실행 파일을 알려줍니다.

일반적으로 경로를 입력하기위한 속기로 가장 유용합니다.

$ which python
/usr/bin/python
$ ls -l `which python`
lrwxr-xr-x  1 root  wheel  72 30 Jan 22:56 /usr/bin/python -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/python
1
Clinton Blackmore

Bonjour 덕분에 Finder에있는 다른 Mac의 IP 주소가 LAN에 어떤 것인지 알고 싶습니까?

dscacheutil -q Host -a name OtherMac.local

dscacheutil은 놀랍게도 유용하고 다재다능합니다. DNS 캐시를 플러시하는 것 (예 : 사용자 조회 및 캐시 통계 및 덤프)보다 더 많은 작업을 수행 할 수 있습니다.

1
Joe Carroll

클라이언트는 어떤 DHCP 라이센스를 보유합니까?

Sudo ls -lt /private/var/db/dhcpclient/leases

방화벽 허용/거부를 ​​나열하십시오.

Sudo ipfw list

높은 엔트로피 암호를 생성합니다 (유사한 16 자 문자열을 두 번 클릭하여 복사/붙여 넣기).

head -c90 /dev/random | uuencode -m pwd | hexdump -C
1
Charles Stewart

이것들은 기본이지만 기억 상실증이있는 경우 편리합니다.

나는 누구입니까?

id

나는 어디에 서 있습니까?

pwd

나는 어떤 건물입니까?

hostname

주소가 뭐야?

ifconfig |grep inet
1
username

가장 유용한 명령어는 아니지만 say는 꽤 재미있을 것입니다.

예를 들어 say I love serverfault "say"다음에 입력 한 내용을 다시 읽도록합니다.

0
HostBits
locate "foo"

파일 이름에 "foo"가있는 시스템의 모든 파일을 표시합니다. Spotlight를 사용하는 것처럼 거의 자주 사용해야합니다.

0
username
 Sudo reboot

컴퓨터를 재부팅합니다.

0
Clinton Blackmore