Linux 入門操作(二)

一晕换、命令行Tab自動(dòng)補(bǔ)全

很多初學(xué)者會(huì)覺得在Linux下面輸入很長的一個(gè)文件名是一件很麻煩的事情忘苛,那其實(shí)是你沒掌握Tab的用法嘗試在輸入部分文件名時(shí)按下Tab鍵

Tab

命令補(bǔ)全
內(nèi)部命令:
外部命令: bash根據(jù)PATH環(huán)境變量定義的路徑吼拥,自左而右在每個(gè)路徑搜尋以給定命令名命名的文件早敬,第一次找到的命令即為要執(zhí)行的命令
用戶給定的字符串只有一條惟一對(duì)應(yīng)的命令歇式,直接補(bǔ)全掌眠,否則,再次Tab會(huì)給出列表

例:
當(dāng)輸入cd 后不知道后面是什么文件時(shí)寥闪,可以摁Tab鍵太惠,會(huì)顯示此目錄下一層文件。輸入cd后疲憋,只記得目錄首字母也可以摁Tab鍵凿渊,會(huì)自動(dòng)補(bǔ)全。忘記命令時(shí)也可以摁Tab幫助缚柳。

目錄提示補(bǔ)全

[root@centos7 ~]#cd
cd                 cd-drive           cd-info            cd-read
cd-create-profile  cd-fix-profile     cd-it8             cdrecord
cdda-player        cd-iccdump         cd-paranoia        
[root@centos7 ~]#cd-read 

路徑補(bǔ)全
把用戶給出的字符串當(dāng)做路徑開頭埃脏,并在其指定上級(jí)目錄下搜索以指定的字符串開頭的文件名
如果惟一:則直接補(bǔ)全
否則:再次Tab給出列表

雙擊Tab鍵
command 2Tab 所有子命令或文件補(bǔ)全
string2Tab 以string開頭命令
/2Tab 顯示所有根目錄下一級(jí)目錄,包括隱藏目錄
./2Tab 當(dāng)前目錄下子目錄秋忙,包括隱藏目錄
*2Tab 當(dāng)前目錄下子目錄彩掐,不包括隱藏目錄
~2Tab 所有用戶列表
$2Tab 所有變量
@2Tab /etc/hosts記錄 ( centos7不支持)
=2Tab 相當(dāng)于ls –A ( centos7不支持)

二、命令行歷史

保存你輸入的命令歷史灰追《掠模可以用它來重復(fù)執(zhí)行命令 登錄shell 時(shí),會(huì)讀取命令歷史文件中記錄下的命令~/.bash_history
登錄進(jìn)shell 后新執(zhí)行的命令只會(huì)記錄在緩存中监嗜;這些命令會(huì)用戶退出時(shí)“追加”至命令歷史文件中
重復(fù)前一個(gè)命令谐檀,有4 種方法:
重復(fù)前一個(gè)命令 使用上方向鍵,并回車執(zhí)行裁奇。
按 !! 并回車執(zhí)行桐猬。
入 輸入 !-1 并回車執(zhí)行。
按 Ctrl+p 并回車執(zhí)行刽肠。

! 字符串: 重復(fù)前一個(gè)以“字符串”開頭的命令
例:

[root@centos7 /]#ls /etc/sysconfig/network-scripts/
ifcfg-ens33  ifdown-ppp       ifup-ib      ifup-Team
ifcfg-lo     ifdown-routes    ifup-ippp    ifup-TeamPort
[root@centos7 /]#cat 
c^C
[root@centos7 /]#!ls
ls /etc/sysconfig/network-scripts/
ifcfg-ens33  ifdown-ppp       ifup-ib      ifup-Team
ifcfg-lo     ifdown-routes    ifup-ippp    ifup-TeamPort

!num: 按照history 命令輸出中的序號(hào)重復(fù)對(duì)應(yīng)命令
!? 字符串: 重復(fù)前一個(gè)包含abc 的命令
!-n : 重復(fù)n
使用up (向上)和down (向下)鍵來上下瀏覽從前輸入的命令
鍵入ctrl-r 來在命令歷史中搜索命令
( (reverse-i-search )`’: :
要重新調(diào)用前一個(gè)命令中最后一個(gè)參數(shù):
!$ 表示
Esc, . (點(diǎn)擊Esc擊 鍵后松開溃肪,然后點(diǎn)擊 . 鍵)
Alt+ . (按住Alt擊 鍵的同時(shí)點(diǎn)擊 . 鍵)

!cat 重復(fù)前一個(gè)以“ cat”開頭的命令
例:

[root@centos7 /app]#cat /app/d1
dddd
wwww
xxx
gggg
[root@centos7 /app]#cat /app/z1
5
2
5
[root@centos7 /app]#!cat
cat /app/z1
5
2
5

!?cat 重復(fù)前一個(gè)包含string的命令
!cat:p 僅打印命令歷史,而不執(zhí)行
!$:p 打印輸出 !$ (上一條命令的最后一個(gè)參數(shù))的內(nèi)容
!:p 打印輸出 !(上一條命令的所有參數(shù))的內(nèi)容
^cat 刪除上一條命令中的第一個(gè)cat
cat1cat2 將上一條命令中的第一個(gè)cat1替換為
cat2
!:gs/cat1/cat2 將上一條命令中所有的cat1都替換
為 cat2

使用up(向上)和down(向下)鍵來上下瀏覽從前輸入的命令
ctrl-r來在命令歷史中搜索命令
? ( reverse-i-search) `’:
Ctrl+g:從歷史搜索模式退出
要重新調(diào)用前一個(gè)命令中最后一個(gè)參數(shù):
!$ 表示
Esc, .(點(diǎn)擊Esc鍵后松開音五,然后點(diǎn)擊 . 鍵)
Alt+ .(按住Alt鍵的同時(shí)點(diǎn)擊 . 鍵)

三惫撰、調(diào)用歷史參數(shù)

command !^ : 利用上一個(gè)命令的第一個(gè)參數(shù)做cmd的參數(shù)
command !$ : 利用上一個(gè)命令的最后一個(gè)參數(shù)做cmd的參數(shù)
例:pwd是最后一個(gè)參數(shù), 用命令touch 創(chuàng)建躺涝!$ (pwd) , ls查詢創(chuàng)建文件夾

[root@centos7 /app]#pwd
/app
[root@centos7 /app]#touch !$
touch pwd
[root@centos7 /app]#ls
22.txt  a1  bin  b.txt  d1  f1  f11  f2  f3  f7.sh  hello.sh  pwd  q7.sh  Rescue.asd  z1

command !* : 利用上一個(gè)命令的全部參數(shù)做cmd的參數(shù)
command !:n : 利用上一個(gè)命令的第n個(gè)參數(shù)做cmd的參數(shù)

command !n:^ 調(diào)用第n條命令的第一個(gè)參數(shù)
command !n:$ 調(diào)用第n條命令的最后一個(gè)參數(shù)
例:history查看313歷史命令厨钻,最后一個(gè)參數(shù)是bash$

313  2017-07-27 16:29:29 cat /etc/passwd |grep bash$
root@centos7 ~]#echo !313$
echo bash$
bash$

command !n:m 調(diào)用第n條命令的第m個(gè)參數(shù)
command !n:* 調(diào)用第n條命令的所有參數(shù)
command !string:^ 從命令歷史中搜索以 string 開頭的命令,并獲取它的第一個(gè)參數(shù)
command !string:$ 從命令歷史中搜索以 string 開頭的命令,并獲取它的最后一個(gè)參數(shù)
command !string:n 從命令歷史中搜索以 string 開頭的命令坚嗜,并獲取它的第n個(gè)參數(shù)
command !string:* 從命令歷史中搜索以 string 開頭的命令夯膀,并獲取它的所有參數(shù)

四、命令history

history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...]
-c: 清空命令歷史

[root@centos7 ~]#history
    1  2017-07-30 16:32:29 echo > .bash_history 
    2  2017-07-30 16:32:37 history
    3  2017-07-30 16:32:47 cat .bash_history
    4  2017-07-30 16:33:58 history
    5  2017-07-30 16:34:15 hostname
[root@centos7 ~]#history -c

-d offset: 刪除歷史中指定的第offset個(gè)命令
n: 顯示最近的n條歷史
-a: 追加本次會(huì)話新執(zhí)行的命令歷史列表至歷史文件
-n: 讀歷史文件中未讀過的行到歷史列表
-r: 讀歷史文件附加到歷史列表
-w: 保存歷史列表到指定的歷史文件
-p: 展開歷史參數(shù)成多行苍蔬,但不存在歷史列表中
例:歷史記錄中沒有這個(gè)命令history -p echo {1..10..3}

[root@centos7 ~]#echo {1..10..3}
1 4 7 10
[root@centos7 ~]#history -p echo {1..10..3}
echo
1
4
7
10
[root@centos7 ~]#history
94  2017-07-30 17:46:30 echo
95  2017-07-30 17:46:53 echo {1..10..3}
96  2017-07-30 17:47:48 history

-s: 展開歷史參數(shù)成一行诱建,附加在歷史列表后

命令歷史相關(guān)環(huán)境變量

HISTSIZE:命令歷史記錄的條數(shù)
例:

[root@centos7 ~]#echo $HISTSIZE
1000

HISTFILE:指定歷史文件,默認(rèn)為~/.bash_history
HISTFILESIZE:命令歷史文件記錄歷史的條數(shù)
例:打開文件碟绑,找到HISTSIZE=1000俺猿,需要修改記錄數(shù)可以把1000修改你覺得合適的記錄數(shù)(用nano編輯器或者vim)

[root@centos7 ~]#cat /etc/profile
HOSTNAME=`/usr/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
    export HISTCONTROL=ignoreboth
else
    export HISTCONTROL=ignoredups

HISTTIMEFORMAT=“%F %T “ 顯示時(shí)間
例: 可以保存到編輯器里面方便查看

[root@centos7 ~]#HISTTIMEFORMAT="%F %T "
[root@centos7 ~]#history
    1  2017-07-30 16:56:19 history -r
    2  2017-07-30 16:32:29 echo > .bash_history 
    3  2017-07-30 16:32:37 history
    4  2017-07-30 16:32:47 cat .bash_history
    5  2017-07-30 16:33:58 history

HISTIGNORE=“str1:str2*:… “ 忽略str1命令茎匠, str2開頭的歷史
控制命令歷史的記錄方式:
環(huán)境變量: HISTCONTROL
ignoredups 默認(rèn),忽略重復(fù)的命令押袍,連續(xù)且相同為“重復(fù)”
ignorespace 忽略所有以空白開頭的命令
ignoreboth 相當(dāng)于ignoredups, ignorespace的組合
erasedups 刪除重復(fù)命令
例:

[root@centos7 ~]#HISTCONTROL=erasedups
[root@centos7 ~]#pwd
/root
[root@centos7 ~]#pwd
/root
[root@centos7 ~]#ls
aliasq           bin        etc                   nano.save  test
anaconda-ks.cfg  Desktop    etc2017-07-29         Pictures   testdir
B                Documents  initial-setup-ks.cfg  Public     typescript
bashrc           Downloads  Music                 Templates  Videos
[root@centos7 ~]#pwd
/root
[root@centos7 ~]#history
 91  2017-07-30 18:05:44 ls
 92  2017-07-30 18:05:48 pwd
 93  2017-07-30 18:06:08 history

export 變量名="值“
存放在 /etc/profile 或 ~/.bash_profile

五诵冒、bash的快捷鍵

Ctrl + l 清屏,相當(dāng)于clear命令
Ctrl + o 執(zhí)行當(dāng)前命令谊惭,并重新顯示本命令
Ctrl + s 阻止屏幕輸出造烁,鎖定
Ctrl + q 允許屏幕輸出
Ctrl + c 終止命令
Ctrl + z 掛起命令
Ctrl + a 光標(biāo)移到命令行首,相當(dāng)于Home
Ctrl + e 光標(biāo)移到命令行尾午笛,相當(dāng)于End
Ctrl + f 光標(biāo)向右移動(dòng)一個(gè)字符
Ctrl + b 光標(biāo)向左移動(dòng)一個(gè)字符
Alt + f 光標(biāo)向右移動(dòng)一個(gè)單詞尾
Alt + b 光標(biāo)向左移動(dòng)一個(gè)單詞首
Ctrl + xx 光標(biāo)在命令行首和光標(biāo)之間移動(dòng)
Ctrl + u 從光標(biāo)處刪除至命令行首
Ctrl + k 從光標(biāo)處刪除至命令行尾
Alt + r 刪除當(dāng)前整行

六、gnome-terminal

應(yīng)用程序->附件->終端
支持多個(gè)“標(biāo)簽” shell的圖形化終端模擬器
Ctrl-Shift-n 創(chuàng)建新窗口
Ctrl-Shift-q 關(guān)閉當(dāng)前窗口
Ctrl-Shift-t 創(chuàng)建一個(gè)標(biāo)簽頁
Ctrl-Shift-w 關(guān)閉一個(gè)標(biāo)簽頁
Ctrl-PaUp/PgUn 切換到下一個(gè)/前一個(gè)標(biāo)簽頁
Ctrl-Shift-c 復(fù)制選中的文本
Ctrl-Shift-v 把文本粘帖到當(dāng)前光標(biāo)處

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末苗桂,一起剝皮案震驚了整個(gè)濱河市药磺,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌煤伟,老刑警劉巖癌佩,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異便锨,居然都是意外死亡围辙,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門放案,熙熙樓的掌柜王于貴愁眉苦臉地迎上來姚建,“玉大人,你說我怎么就攤上這事吱殉〉г” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵友雳,是天一觀的道長稿湿。 經(jīng)常有香客問我,道長押赊,這世上最難降的妖魔是什么饺藤? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮流礁,結(jié)果婚禮上涕俗,老公的妹妹穿的比我還像新娘。我一直安慰自己崇棠,他們只是感情好咽袜,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著枕稀,像睡著了一般询刹。 火紅的嫁衣襯著肌膚如雪谜嫉。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天凹联,我揣著相機(jī)與錄音沐兰,去河邊找鬼。 笑死蔽挠,一個(gè)胖子當(dāng)著我的面吹牛住闯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播澳淑,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼比原,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼!你這毒婦竟也來了杠巡?” 一聲冷哼從身側(cè)響起量窘,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎氢拥,沒想到半個(gè)月后蚌铜,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嫩海,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年冬殃,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片叁怪。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡审葬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出骂束,到底是詐尸還是另有隱情耳璧,我是刑警寧澤,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布展箱,位于F島的核電站旨枯,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏混驰。R本人自食惡果不足惜攀隔,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望栖榨。 院中可真熱鬧昆汹,春花似錦、人聲如沸婴栽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽愚争。三九已至映皆,卻和暖如春挤聘,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背捅彻。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來泰國打工组去, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人步淹。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓从隆,卻偏偏與公主長得像,于是被迫代替她去往敵國和親缭裆。 傳聞我的和親對(duì)象是個(gè)殘疾皇子键闺,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • Ubuntu的發(fā)音 Ubuntu盅藻,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音畅铭。了解發(fā)音是有意...
    螢火蟲de夢(mèng)閱讀 99,159評(píng)論 9 467
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯(cuò)誤還是無法避免 以后資料會(huì)慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,135評(píng)論 2 34
  • 上午: 交通醫(yī)院風(fēng)機(jī)盤管的殼子氏淑,纏膠帶 下午: 盤點(diǎn)中區(qū)的六臺(tái)空調(diào) 和 地下餐廳的空調(diào),扎線 晚上:焊接冷凝管
    小炮樓閱讀 94評(píng)論 0 0
  • #龍木子日記# 2017.9.21 第23日 1.一大早就出門硕噩,雨后的清晨假残,空氣清新,行人來來往往炉擅,各自走在自己的...
    龍木子閱讀 212評(píng)論 0 0
  • Java的運(yùn)算符 數(shù)學(xué)是整個(gè)程序的基礎(chǔ)辉懒,所以各種常用的計(jì)算符號(hào),Java都會(huì)提供谍失。但是如果你想要進(jìn)行更加復(fù)雜的計(jì)算...
    大魚魚閱讀 120評(píng)論 0 0