一次性認識終端命令


一、 前言

在公司看到導師同事命令敲得那么熟練.反觀自己只懂得一些`cd`、`ls`,導師就建議: 你該多去熟悉一下終端命令,這些都是你提高開發效率的方法

於是總結一次常用的終端命令,方便以后查閱和使用

二、 命令

打開ssh正確姿態

打開ssh密鑰文件是很簡單的命令,因為不經常使用所以總是記不住,每次需要用的時候就得去百度. ``` //打開.ssh文件 open ~/.ssh ``` 打開id_rsa.pub,里面所有內容就是密鑰內容

目錄操作

命令 | 功能描述 | 簡單樣例 :--:| :--:| :--:| mkdir | 創建一個目錄 | mkdir dirname rmdir | 刪除一個目錄 | rmdir dirname mvdir(mac使用mv) | 移動或重命名一個目錄 | mvdir dir1 dir2 cd | 改變當前目錄 | cd dirname pwd | 顯示當前目錄的路徑名 | pwd ls | 顯示當前目錄的內容 | ls -la dircmp | 比較兩個目錄的內容 | dircmp dir1 dir2

/Users/chenxiaobin/Youzan/code/blog為例子

  1. 先通過cd命令進入blog文件夾
  2. pwd查看文件當前路徑、ls查看當前文件夾內容
  3. 在當前目錄通過mkdir新建文件夾
  4. 對新建的文件夾通過mv修改名字,並再用ls查看當前目錄文件
  5. 通過rmdir刪除test1文件夾
  6. 通過cd ~返回打開該終端的根目錄

注意:

  • mvdir是linux命令,在mac終端無法使用,我使用了iTerm2的高亮主題,輸入rmdir時會爆紅

  • ll命令是ls的升級版,除了和ls一樣顯示文件名和目錄名,還會顯示文件的時間、讀寫權限(staff:管理員)等等

添加ll命令也不難:

  1. vim編輯~/.bashrc 文件
sudo vim ~/.bashrc
  1. 添加別名
    去掉 #alias ll='ls -l' 前面的 # 號就能使用 ll 命令了。
i. 點擊i進入編輯模式
ii. 修改相應部分
iii. esc -> shift+: -> wq
  1. 生效操作
sudo source ~/.bashrc

文件操作

命令 | 功能描述 | 簡單樣例 :--:| :--:| :--:| cat | 顯示或連接文件 | cat filename rm | 刪除文件或目錄 | rm filename mv | 改變文件名或所在目錄 | mv file1 file2 cp | 復制文件或目錄 | cp file1 file2(新名稱) open | 使用默認的程序打開文件 | open filename file | 顯示文件類型 | file filename find | 使用匹配表達式查找文件 | find . /directory -name "*.txt"

`cat`命令

cat命令主要用來查看文件內容,創建文件,文件合並,追加文件內容等功能

這個我目前還沒怎么使用,具體可以查看:《linux下cat命令詳解》

`open`命令

前面我們已經接觸過`open`命令了:`open ~/.ssh`(~為根目錄)

open會幫助你用默認方式打開指定文件,例如html就用瀏覽器打開.

`file`命令

file命令用來探測給定文件的類型。file命令對文件的檢查分為文件系統、魔法幻數檢查和語言檢查3個過程。

`find`命令

在指定目錄下查找文件。任何位於參數之前的字符串都將被視為欲查找的目錄名。如果使用該命令時,不設置任何參數,則find命令將在當前目錄下查找子目錄與文件。並且將查找到的子目錄和文件全部進行顯示。

命令: find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]

  • 列出當前目錄及子目錄下所有文件和文件夾
find .
  • 在當前目錄下查找以.txt結尾的文件名
find ./ -name "*.txt"
  • 匹配文件路徑或者文件
find /usr/ -path "*local*"
  • 基於正則表達式匹配文件路徑
find . -regex ".*\(\.txt\|\.pdf\)$"

上面都是最經常使用的一些命令.下面放一些擴展的命令

選擇操作

命令 | 功能描述 | 簡單樣例 :--:| :--:| :--:| 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

其它命令

命令 | 功能描述 | 簡單樣例 :--:| :--:| :--:| uname | 顯示操作系統的有關信息 | uname -a clear | 清除屏幕或窗口內容 | clear env | 顯示當前所有設置過的環境變量 | env who | 列出當前登錄的所有用戶 | who whoami | 顯示當前正進行操作的用戶名 | whoami tty | 顯示終端或偽終端的名稱 | tty stty | 顯示或重置控制鍵定義 | stty -a du | 查詢磁盤使用情況 | du -k subdir df | 顯示文件系統的總空間和可用空間 | df /tmp w | 顯示當前系統活動的總信息 | w

參考文章:

文檔:《Linux命令大全》

簡書:《Mac 終端命令大全》


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM