Mac OS X終端的常用操作命令(UNIX指令)

用了十多年windows,終于換了個高配Mac,俗話說 無論前端還是后端最終還是走向了linux,無論是換了多少臺PC最終都會走向Mac。不學習命令行用什么Mac? 干就完了~

pwd     顯示現在的文件路徑 (print working directory)
ls      顯示現在路徑里的文件和文件夾  (list,不是is!樓主一開始老以為是Is,一直輸錯)
mkdir   創建文件夾  (make directory)
cp    復制文件  [文件名/路徑]
rmdir   刪除文件夾  (remove directory)
rm      刪除文件      (remove directory)刪除文件夾     rm -rf ../../test123/  recursive   adj. 回歸的,遞歸的;
rm -rf 強制刪除文件夾內所有文件
cd      移動             (change directory) 一般先pwd看下當下路徑,然后ls看看有啥,然后自己想去哪兒就直接輸入名稱
cd ..   回到上一級目錄
cd ~   回到主目錄             注意~是回到主目錄,..才是回到上一級,用錯很痛苦的
剩下一些基本不怎么用,略過。
mv      移動文件或是重命名文件  (move)重命名: mv a b
mkdir   名字 創建文件夾
touch   創建文件
open    打開文件
ctrl + C 強制結束

 詳細:

OSX 的文件系統 
OSX 采用的Unix文件系統,所有文件都掛在跟目錄 / 下面,所以不在要有Windows 下的盤符概念。 
你在桌面上看到的硬盤都掛在 /Volumes 下。 
比如接上個叫做 USBHD的移動硬盤,桌面上會顯示出一個硬盤圖標,它實際在哪里呢? 
在終端里執行 ls /Volumes/USBHD, 看看顯示出的是不是這個移動硬盤的內容。 
根目錄位置是 / 核心 Mach_kernel 就在這里, 
驅動所在位置 /Systme/Library/Extensions 
用戶文件夾位置 /User/用戶名 
桌面的位置 /User/用戶名/Desktop 
文件通配符為星號 * 
注意:在 Unix系統中是區別大小寫字符的,A.txt 不等于 a.txt。 
根目錄標志 / 不是可有可無,cd /System 表示轉到跟目錄下的System中,而cd System 表示轉到當前目錄下的 System中 
—————————————————————————————————————————————— 
如何進入命令行操作模式 
再圖形界面下,用finder 打開 應用程序 》實用程序》終端 
如果連圖形界面都進不去了(比如安錯了顯示驅動),開機時按 F8,用-s參數啟動,然后輸入命令 mount -uw / 獲得權限 
為了防止誤操作破壞系統,再用戶狀態下時沒有權限操作系統重要文件的,所以先要取得root權限 
sudo -s 
然后輸入密碼,輸入密碼時沒有任何回顯,連星號都沒有,只管輸完回車就行了。 
—————————————————————————————————————————————— 
基本命令 
列出文件 
ls 參數 目錄名 
例: 想看看跟目錄下有什么, 
ls / 
想看看驅動目錄下有什么, 
ls /System/Library/Extensions 
參數 -w 顯示中文,-l 詳細信息, -a 包括隱藏文件 
轉換目錄 
cd 
例:想到驅動目錄下溜達一圈 
cd /System/Library/Extensions 
建立新目錄 
mkdir 目錄名 
例:在驅動目錄下建一個備份目錄 backup 
mkdir /System/Library/Extensions/backup 
在桌面上建一個備份目錄 backup 
mkdir /User/用戶名/Desktop/backup 
拷貝文件 
cp 參數 源文件 目標文件 
例:想把桌面的Natit.kext 拷貝到驅動目錄中 
cp -R /User/用戶名/Desktop/Natit.kext /System/Library/Extensions 
參數R表示對目錄進行遞歸操作,kext在圖形界面下看起來是個文件,實際上是個文件夾。 
把驅動目錄下的所有文件備份到桌面backup 
cp -R /System/Library/Extensions/* /User/用戶名/Desktop/backup 
刪除文件 
rm 參數 文件 
例:想刪除驅動的緩存 
rm -rf /System/Library/Extensions.kextcache 
rm -rf /System/Library/Extensions.mkext 
參數-rf 表示遞歸和強制,千萬要小心使用,如果執行了 rm -rf / 你的系統就全沒了 移動文件 
mv 文件 
例:想把AppleHDA.Kext 移到桌面 
mv /System/Library/Extensions/AppleHDA.kext /User/用戶名/Desktop 
想把AppleHDA.Kext 移到備份目錄中 
mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/backup 
更改文件權限 
chmod 參數 權限 文件 
例:把驅動目錄下所有文件設定到root讀寫,其他用戶只讀 
chmod -R 755 /System/Library/Extensions 
參數R 表示遞歸,755表示各用戶的權限 
更改文件屬主 
chown 參數 用戶:組 文件 
例:把驅動目錄下的所有文件屬主改成根用戶 
chown -R root:wheel /System/Library/Extensions 
參數R 表示遞歸操作 
修復整個系統中文件的權限 
diskutil repairpermissions / 
嚴格的說這不是一個unix 命令,而是osx一個軟件,記得修改或添加的驅動就執行一次。 
文本編輯 
nano 文件名 
例:編輯natit Info.plist 
nano /System/Library/Extensions/Natit.kext/Info.plist 
編輯完成后 用 Ctrl +O 存盤,Ctrl+X 退出 
另一個文本編輯軟件是 vi,操作有些古怪,熟了是非常好用的,而且在所有類Unix系統中都它,走遍天下都不怕了。 
運行腳本命令 
sh 腳本文件名 
例 修改驅動后所有需要的操作存成一個腳本,以后修改了驅動后只要運行一次這個腳本就可以了,方便吧 
1. 終端中運行nano /clean 
2. 把下列代碼粘貼到 nano 中 
rm -rf /System/Library/Extensions.kextcache 
rm -rf /System/Library/Extensions.mkext 
chown -R root:wheel /System/Library/Extensions 
chmod -R 755 /System/Library/Extensions 
diskutil repairpermissions / 
kextcache -k /System/Library/Extensions/ 
3. Ctrl +O 存盤,Ctrl+X 退出 
4. 以后只要動了驅動,就在終端中運行一次 sh /clean 
———————————————————————————————————— 
小技巧 
用 Tab 鍵自動補齊命令 
比如想到 /System 目錄中去,輸入 cd /Sy 然后按一下Tab 鍵,命令就會自動補齊成 cd /System 
操作帶名字中帶有空格的文件和目錄 
空格在命令中寫成 空格, 比如要進入 My Documents,命令為 cd My Documents 
查看命令的詳細幫助 
man 命令名 
比如要看看 ls 命令的詳細用法,執行 man ls 
———————————————————————————————————— 
典型操作流程 
(假設已經制作好清理腳本,記得每次操作前 sudo -s 獲得系統權限) 
假設下載了一個顯卡驅動 Natit.zip,在桌面解壓得到了一個Natit.kext,該怎么做呢? 
為了保險起見,先把所有驅動備份了再說 
mkdir /User/用戶名/Desktop/backup 在桌面上建立備份文件夾 
cp -R /System/Library/Extensions/* /User/用戶名/Desktop/backup 備份驅動文件 
現在可以安心安裝了 
cp -R /User/用戶名/Desktop/Natit.kext /System/Library/Extensions 把它 拷貝到系統驅動目錄位置 
sh /clean 執行清理腳本,操作完成 
重新開機失敗,進不去桌面了,發現不應該安這個驅動,怎么恢復呢? 
開機按F8,用 -s 參數啟動 
執行 mount -uw / 
rm -rf /User/用戶名/Desktop/Natit.kext 刪除這個驅動 
sh /clean 執行清理腳本,操作完成 
重啟,回到原先狀態了,不死心啊,沒有特效怎么行呢,又聽說需要修改 Natit的 Info. plist 文件才行,好,再來 
cp -R /User/用戶名/Desktop/Natit.kext /System/Library/Extensions 把它 拷貝到系統驅動目錄位置 
nano /System/Library/Extensions/Natit.kext/Info.plist 
編輯完成后 用 Ctrl +O 存盤,Ctrl+X 退出 
sh /clean 執行清理腳本,操作完成 
重啟,這回對了,顯卡特效都有了,該弄聲卡了,天知道會出什么事,得把現有成果保護好。 
mkdir /User/用戶名/Desktop/gooddrivers 專為有效驅動建個目錄 
cp -R /System/Library/Extensions/Natit.kext /User/用戶名/Desktop/gooddrivers 備份 
這個聲卡要求把 AppleHDA.kext 刪除和編輯 AppleAzaliaAudio.kext中的Info.plist 文件,誰知道以后會不會還用AppleHDA呢,不如暫時禁用吧。 
mkdir /System/Library/Extensions/disabled 建立個禁用目錄 
mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/disabled 移動過去 
nano /System/Library/Extensions/Natit.kext/AppleAzaliaAudio.kext/Info.plist 
編輯完成后 用 Ctrl +O 存盤,Ctrl+X 退出 
sh /clean 執行清理腳本,操作完成 
成功了,也把修改好的驅動備份一下把 
復制內容到剪貼板代碼: 以下是unix的命令行,供參考 
目錄操作 
命令名 
功能描述 
使用舉例 
mkdir 
創建一個目錄 
mkdir dirname 
rmdir 
刪除一個目錄 
rmdir dirname 
mvdir 
移動或重命名一個目錄 
mvdir dir1 dir2 
cd 
改變當前目錄 
cd dirname 
pwd 
顯示當前目錄的路徑名 
pwd 
ls 
顯示當前目錄的內容 
ls -la 
dircmp 
比較兩個目錄的內容 
dircmp dir1 dir2 
文件操作 
命令名 
功能描述 
使用舉例 
cat 
顯示或連接文件 
cat filename 
pg 
分頁格式化顯示文件內容 
pg filename 
more 
分屏顯示文件內容 
more filename 
od 
顯示非文本文件的內容 
od -c filename 
cp 
復制文件或目錄 
cp file1 file2 
rm 
刪除文件或目錄 
rm filename 
mv 
改變文件名或所在目錄 
mv file1 file2 
ln 
聯接文件 
ln -s file1 file2 
find 
使用匹配表達式查找文件 
find . -name "*.c" -print 
file 
顯示文件類型 
file filename 
選擇操作 
命令名 
功能描述 
使用舉例 
head 
顯示文件的最初幾行 
head -20 filename 
tail 
顯示文件的最后幾行 
tail -15 filename 
cut 
顯示文件每行中的某些域 
cut -f1,7 -d: /etc/passwd 
colrm 
從標準輸入中刪除若干列 
colrm 8 20 file2 
paste 
橫向連接文件 
paste file1 file2 
diff 
比較并顯示兩個文件的差異 
diff file1 file2 
sed 
非交互方式流編輯器 
sed "s/red/green/g" filename 
grep 
在文件中按模式查找 
grep "^[a-zA-Z]" filename 
awk 
在文件中查找并處理模式 
awk '{print $1 $1}' filename 
sort 
排序或歸并文件 
sort -d -f -u file1 
uniq 
去掉文件中的重復行 
uniq file1 file2 
comm 
顯示兩有序文件的公共和非公共行 
comm file1 file2 
wc 
統計文件的字符數、詞數和行數 
wc filename 
nl 
給文件加上行號 
nl file1 >file2 
安全操作 
命令名 
功能描述 
使用舉例 
passwd 
修改用戶密碼 
passwd 
chmod 
改變文件或目錄的權限 
chmod ug+x filename 
umask 
定義創建文件的權限掩碼 
umask 027 
chown 
改變文件或目錄的屬主 
chown newowner filename 
chgrp 
改變文件或目錄的所屬組 
chgrp staff filename 
xlock 
給終端上鎖 
xlock -remote 
編程操作 
命令名 
功能描述 
使用舉例 
make 
維護可執行程序的最新版本 
make 
touch 
更新文件的訪問和修改時間 
touch -m 05202400 filename 
dbx 
命令行界面調試工具 
dbx a.out 
xde 
圖形用戶界面調試工具 
xde a.out 
進程操作 
命令名 
功能描述 
使用舉例 
ps 
顯示進程當前狀態 
ps u 
kill 
終止進程 
kill -9 30142 
nice 
改變待執行命令的優先級 
nice cc -c *.c 
renice 
改變已運行進程的優先級 
renice +20 32768 
時間操作 
命令名 
功能描述 
使用舉例 
date 
顯示系統的當前日期和時間 
date 
cal 
顯示日歷 
cal 8 1996 
time 
統計程序的執行時間 
time a.out 
網絡與通信操作 
命令名 
功能描述 
使用舉例 
telnet 
遠程登錄 
telnet hpc.sp.net.edu.cn 
rlogin 
遠程登錄 
rlogin hostname -l username 
rsh 
在遠程主機執行指定命令 
rsh f01n03 date 
ftp 
在本地主機與遠程主機之間傳輸文件 
ftp ftp.sp.net.edu.cn 
rcp 
在本地主機與遠程主機 之間復制文件 
rcp file1 host1:file2 
ping 
給一個網絡主機發送 回應請求 
ping hpc.sp.net.edu.cn 
mail 
閱讀和發送電子郵件 
mail 
write 
給另一用戶發送報文 
write username pts/1 
mesg 
允許或拒絕接收報文 
mesg n 
Korn Shell 命令 
命令名 
功能描述 
使用舉例 
history 
列出最近執行過的 幾條命令及編號 
history 
r 
重復執行最近執行過的 某條命令 
r -2 
alias 
給某個命令定義別名 
alias del=rm -i 
unalias 
取消對某個別名的定義 
unalias del 
其它命令 
命令名 
功能描述 
使用舉例 
uname 
顯示操作系統的有關信息 
uname -a 
clear 
清除屏幕或窗口內容 
clear 
env 
顯示當前所有設置過的環境變量 
env 
who 
列出當前登錄的所有用戶 
who 
whoami 
顯示當前正進行操作的用戶名 
whoami 
tty 
顯示終端或偽終端的名稱 
tty 
stty 
顯示或重置控制鍵定義 
stty -a 
du 
查詢磁盤使用情況 
du -k subdir 
df 
顯示文件系統的總空間和可用空間 
df /tmp 
w 
顯示當前系統活動的總信息

  

  

轉載于:https://www.cnblogs.com/smzd/p/9437782.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/249862.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/249862.shtml
英文地址,請注明出處:http://en.pswp.cn/news/249862.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

索引( index )

索引在龐大的數據庫上最能體現出作用,所謂索引就是根據需求將指定的列提取出來做索引表,可以顯著提高在查找數據方面的速度。 在索引的前提下還可以指定索引值是否唯一,索引值是單列或是多列索引。 根據索引類型,索引分為&#xf…

dependencies 和 devDependencies 區別

當我們項目需要下載一個模塊的時候,我們安裝npm包(在項目目錄下面npm install module_name)的時候,很多時候我們會在后面加上–save-dev 或 –save。這兩個參數代表什么呢? 初識 相信很多人都會回答: np…

CentOS下防御或減輕DDoS攻擊方法(轉)

查看攻擊IP 首先使用以下代碼,找出攻擊者IP netstat -ntu | awk {print $5} | cut -d: -f1 | sort | uniq -c | sort -n 將會得出類似如下的結果: 1 114.226.9.132 1 174.129.237.157 1 58.60.118.142 1 Address 1 servers) 2 118.26.131.78 3 123.125.1…

iTerm2 快捷鍵

Ctrl a:將光標移動到命令行首 Ctrl e:將光標移動到命令行尾 Ctrl w:刪除光標前的一個單詞 Ctrl u:刪除所有內容 Ctrl y:粘貼上次刪除的內容 Ctrl r:搜索歷史命令刪除光標之前的單詞:ctrl …

vscode - 添加背景圖片

首先,CtrlShiftP安裝backround , 而后重啟vscode會有默認的背景圖片 修改背景圖,可自定義三張 具體請看gif圖 最開始時,發現png根本不是全透明,用ps處理了一下(下列所有操作均字母組合) 1.1 Ctr…

架構設計雜談004——架構師

什么是架構設師 架構師是:負責系統架構設計的人、團隊或組織 架構師主要干什么 ●架構師是技術領導,領導并負責架構設計,負責做決策 ●架構師可以是團隊或組織,這個時候通常會有首席架構師 ●架構師必須掌握足夠的技術知識 ●架構…

學習JS基本數據類型與對象的valueOf方法

https://blog.csdn.net/licheng11403080324/article/details/60128090 https://yq.aliyun.com/articles/399499 轉載于:https://www.cnblogs.com/smzd/p/9548530.html

security和oauth2.0的整合

security和oauth2.0的整合 之前已經介紹過security的相關的介紹,現在所需要做的就是security和oauth2.0的整合,在原有的基礎上我們加上一些相關的代碼;代碼實現如下: pom.xml: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http:…

關于Vue.use()詳解

問題 相信很多人在用Vue使用別人的組件時&#xff0c;會用到 Vue.use() 。例如&#xff1a;Vue.use(VueRouter)、Vue.use(MintUI)。但是用 axios時&#xff0c;就不需要用 Vue.use(axios)&#xff0c;就能直接使用。那這是為什么吶&#xff1f; 答案 因為 axios 沒有 install。…

百度TTS的來由

#### https://home-assistant.io/components/tts.baidu/#### https://github.com/charleyzhu/HomeAssistant_Components#### 當前使用自定義組件 https://bbs.hassbian.com/thread-1152-1-1.html#### 2018-3-15添加百度云語音識別 - platform: baidu language: zh app_i…

eslint 禁用命令

/* eslint-disable */ ESLint 在校驗的時候就會跳過后面的代碼還可以在注釋后加入詳細規則&#xff0c;這樣就能避開指定的校驗規則了/* eslint-disable no-new */常用&#xff1a; rules: {"comma-dangle": ["error", "never"], //是否允許對象…

分布式工具的一次小升級?

前言 之前在做 秒殺架構實踐 時有提到對 distributed-redis-tool 的一次小升級&#xff0c;但是沒有細說。 其實主要原因是&#xff1a; 秒殺時我做壓測&#xff1a;由于集成了這個限流組件&#xff0c;并發又比較大&#xff0c;所以導致連接、斷開 Redis 非常頻繁。 最終導致獲…

淺談vue $mount()

Vue 的$mount()為手動掛載&#xff0c;在項目中可用于延時掛載&#xff08;例如在掛載之前要進行一些其他操作、判斷等&#xff09;&#xff0c;之后要手動掛載上。new Vue時&#xff0c;el和$mount并沒有本質上的不同。 具體見代碼&#xff1a; 順便附上vue渲染機制流程圖&a…

小三角

{border-color: transparent;border-right-color: #e5e5e5;border-width: 7px;margin-top: -7px;right: 100%;top: 20px;border: solid transparent;content: " ";height: 0;width: 0;position: absolute;pointer-events: none; }轉載于:https://www.cnblogs.com/smz…

Laravel日志查看器 -- log-viewer擴展

1.修改laravel配置文件. config\app.php log>daily 2.在項目目錄中composer命令安裝擴展&#xff1a;composer require arcanedev/log-viewer 3.安裝成功后&#xff0c;需要在config\app.php 的providers陣列中注冊服務 Arcanedev\LogViewer\LogViewerServiceProvider::clas…

論一個程序員的自我修養-從一張圖片說起

故事起源 本來今天想寫.NET Core實戰之CMS系統第十五篇文章的。哈&#xff0c;奈何今天在新生命人脈群里面看到石頭哥分享的一張圖片&#xff0c;然后大家就議論了起來&#xff0c;不過我看的很懵逼&#xff0c;這圖什么意思啊&#xff1f;當一個朋友講述了這個圖片背后的故事的…

vue實例屬性之el,template,render

一、el&#xff0c;template&#xff0c;render屬性優先性 當Vue選項對象中有render渲染函數時&#xff0c;Vue構造函數將直接使用渲染函數渲染DOM樹&#xff0c;當選項對象中沒有render渲染函數時&#xff0c;Vue構造函數首先通過將template模板編譯生成渲染函數&#xff0c;然…

mysql8的坑

plugin caching_sha2_password could not be loaded 我在mac上用Sequel Pro連數據庫的時候&#xff0c;會報出以上錯誤&#xff0c;這是應為8.0.11把身份認證插件改成了 caching_sha2_password &#xff0c;而客戶端沒法使用此插件。 這是我們只要用命令行進去mysql&#xff0c…

c/c++ 繼承與多態 文本查詢的小例子(非智能指針版本)

問題&#xff1a;在上一篇繼承與多態 文本查詢的小例子&#xff08;智能指針版本&#xff09;在Query類里使用的是智能指針&#xff0c;只把智能指針換成普通的指針&#xff0c;并不添加拷貝構造方法&#xff0c;會發生什么呢&#xff1f; 執行時&#xff0c;代碼崩掉。 分析下…

day19_生成器

20180730 初次上傳 20180731 更新&#xff0c;4、列表生成式&#xff0c;以及部分注釋 #!/usr/bin/env python # -*- coding:utf-8 -*-# ********************day19_生成器 ******************* # ********************day19_生成器 ******************* # *******************…