1. 程式人生 > >常用bash命令

常用bash命令

區分 /usr 字節數 寫入 環境變量 自己的 全局變量 全部 class

pwd      當前工作目錄

cd(不加參數)  進root

cd(folder)  進入文件夾

cd ..      上級目錄

cd ~      返回root

cd -      返回上一個訪問的目錄

rm 文件名     刪除

cat 文件名(|less)  在終端下查看文件

ls        列出目錄下所有文件

cp 文件名 目標目錄  將文件拷貝到目標目錄下

~代表root  如:~/Document/CPP2/

mkdiv      新建文件夾

g++ 源文件名    編譯源文件,產生a.out

./文件名      運行 例如:./a.out < 輸入文件名 > 輸出文件名

control+d     中斷a.out運行

nano       編寫腳本語言  ctrl+o存儲

nano ....sh    打開

bash ....sh    運行腳本

echo "...$i..."   輸出語句

mac os默認的shell也是bash,打開終端,默認就是bash;

如果在終端中輸入指令bash:

taylors-Mac-mini:~ taylor$ bash

bash-3.2$

然後在bash-3.2$ xxxxxxx

下輸入的指令,其實就相當於 bash ....sh    運行腳本

退出bash的腳本模式直接exit就回到了用戶狀態

#!/bin/sh 是指此腳本使用/bin/sh來解釋執行,#!是特殊的表示符,其後面根的是此解釋此腳本的shell的路徑。

例子

#!/bin/bash 以bash shell來解釋

#!/bin/csh 以csh shell來解釋

#!/usr/bin/env python 以下代碼由python來解釋

  • 批量圖像格式轉換

 如果想將某目錄下的所有jpg文件轉換為png文件,只要在命令行模式下輸入:

 for %f in (*.jpg) do convert “%f“%~nf.png

  • 批量圖像resize

convert -resize 1024x768 xxx.jpg xxx1.jpg 將圖像的像素改為1024*768,註意1024與768之間是小寫字母x

  • 查看命令的操作說明:man name
  • 查看文件的類型和具體屬性:file filename
  • 查看類型:type name
  • 查詢文件位置(模糊查詢,路徑中含有關鍵字的所有文件):locate 關鍵字
  • 查看文件/目錄的所有屬性(文件大小,類型,修改時間,所有者,文件權限等):ls filename -al
  • 查看目錄下包含隱藏文件在內的所有文件:ls -a/ls -A
  • 同一個命令在兩行中輸入:行尾處\Enter,自動進入下一行

  • 環境變量:$PATH ,$代表後面接著一個變量,輸出環境變量:echo $PATH; 若該變量為擴增變量內容時,則可用 "$變量名稱" 或 ${變量} 累加內容,如下所示:『PATH="$PATH":/home/bin』;若該變量需要在其他子程序運行,則需要以 export 來使變量變成環境變量:
    export PATH』;export自定義變量轉成環境變量:export 變量名,分享自己的變量配置給後來呼叫的文件或其他程序
  • 環境變量=全局變量,自定義變量=局部變量;

[[email protected] ~]# history [n]

[[email protected] ~]# history [-c]

[[email protected] ~]# history [-raw] histfiles

選項與參數:

n :數字,意思是『要列出最近的 n 筆命令行表』的意思!

-c :將目前的 shell 中的所有 history 內容全部消除

-a :將目前新增的 history 命令新增入 histfiles 中,若沒有加 histfiles

則默認寫入 ~/.bash_history

-r :將 histfiles 的內容讀到目前這個 shell 的 history 記憶中;

-w :將目前的 history 記憶內容寫入 histfiles 中!

範例一:列出目前內存內的所有 history 記憶

[[email protected] ~]# history

Linux統計文件行數

語法:wc [選項] 文件

說明:該命令統計給定文件中的字節數、字數、行數。如果沒有給出文件名,則從標準輸入讀取。wc同時也給出所有指定文件的總統計數。字是由空格字符區分開的最大字符串。

該命令各選項含義如下:

  - c 統計字節數。

  - l 統計行數。

  - w 統計字數。

這些選項可以組合使用。

輸出列的順序和數目不受選項的順序和數目的影響。

總是按下述順序顯示並且每項最多一列。

行數、字數、字節數、文件名

如果命令行中沒有文件名,則輸出中不出現文件名。

例如:

$ wc - lcw file1 file2
4 33 file1
7 52 file2
11 11 85 total

舉例分析:

1.統計demo目錄下,js文件數量:

find demo/ -name "*.js" |wc -l

2.統計demo目錄下所有js文件代碼行數:

find demo/ -name "*.js" |xargs cat|wc -l 或 wc -l `find ./ -name "*.js"`|tail -n1

3.統計demo目錄下所有js文件代碼行數,過濾了空行:

find /demo -name "*.js" |xargs cat|grep -v ^$|wc -l

常用bash命令