新聞中心
在Linux系統(tǒng)中,選中全部內(nèi)容是一項常見的操作。這個操作常常用于復(fù)制、剪切和刪除文件、文件夾等操作。然而,對于新手用戶來說,這個任務(wù)可能并不容易。在這篇文章中,我們將介紹在Linux系統(tǒng)中選中全部內(nèi)容的不同方法。

鄢陵ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
方法一:使用鼠標(biāo)和鍵盤
使用鼠標(biāo)和鍵盤來選中全部內(nèi)容可能是最基礎(chǔ)的方法。你只需按住ctrl和a鍵即可選中全部內(nèi)容。你也可以用鼠標(biāo)左鍵單擊一次要選中的內(nèi)容,然后按住shift鍵,選擇鼠標(biāo)左鍵拖動范圍,就可以選中所有內(nèi)容。
方法二:使用命令行
在命令行中選中全部內(nèi)容是一項非常簡單的任務(wù)。你只需使用特定的命令,就可以快速選中你需要的全部內(nèi)容。以下是一些常見的命令:
1. ls命令:使用ls命令可以列出當(dāng)前目錄下的所有文件和文件夾。如果你需要選中所有內(nèi)容,只需輸入“l(fā)s -a”,或“l(fā)s -l”就可以選中所有文件和文件夾。
2. rm命令:使用rm命令可以刪除文件和文件夾。要刪除所有內(nèi)容,請在命令行中輸入“rm -r *”。
3. cat命令:使用cat命令可以在終端中查看文件內(nèi)容。如果你需要查看文件中的所有內(nèi)容,請輸入“cat *”。
4. tar命令:使用tar命令可以將文件和文件夾打包成單個文件或者解壓縮文件。要打包所有內(nèi)容,只需在命令行中輸入“tar -cvzf archive.tar.gz *”。
方法三:使用快捷鍵
快捷鍵是一種在Linux系統(tǒng)中選中所有內(nèi)容的便捷方式。例如,在Ubuntu操作系統(tǒng)中,你可以使用快捷鍵ctrl+alt+a來選中所有內(nèi)容。而在Fedora和RedHat中,快捷鍵則是ctrl+a。無論你使用哪種Linux操作系統(tǒng),快捷鍵都是一種簡單而方便的選中全部內(nèi)容的方法。
方法四:使用文件管理器
文件管理器是一個可視化的選擇全部內(nèi)容的更佳方法。對于新手用戶來說,這可能是最容易的方法。只需打開文件管理器,選中要操作的文件或文件夾,然后單擊ctrl+a即可選中全部內(nèi)容。
Linux系統(tǒng)中選中所有內(nèi)容非常簡單。你可以使用鼠標(biāo)和鍵盤、命令行、快捷鍵或文件管理器中的任一方法來進(jìn)行。如果你是一名Linux新手用戶,使用文件管理器是最容易選中全部內(nèi)容的方法。如果你是一位更高級的用戶,使用命令行會是一種更高效的選中全部內(nèi)容的方法。嘗試使用這些方法,你將比以前更加容易、快速地選中你需要的全部內(nèi)容。
相關(guān)問題拓展閱讀:
- linux 在黑屏終端下,怎么選中信息進(jìn)行復(fù)制
- Linux 常用命令(要求全而精)
- Linux 常用命令(要求全而精)
linux 在黑屏終端下,怎么選中信息進(jìn)行復(fù)制
在終端鼠標(biāo)選中區(qū)域,源扮按下回車,陵裂在粘貼處右擊即粘貼
要是在vi編輯雹汪灶器里,移動到目標(biāo)按下yy,在粘貼處按下p
看你在哪里面了
如果再VI編銀桐輯器里面鋒散坦可以輸入你要復(fù)制的行數(shù)
比如說要復(fù)制5行就掘世在命令行模式輸入”5yy“
如果復(fù)制一行就直接”yy”
以此類推
如果再平時輸入命令的時候或者命令輸出結(jié)果的話就發(fā)復(fù)制了
當(dāng)然還是有辦法的
就是用重定向輸出”>”
讓他輸出到一個文件里面
然后再用VI編輯器打開進(jìn)行復(fù)制
親
都是個人經(jīng)驗啊
記得給分
Linux 常用命令(要求全而精)
1、linux分區(qū)
–在linux里面所有的設(shè)備、任何東西,在linux看來都是文件。
–文件在它看來,有兩種形式:
之一種是字符型(鍵盤輸入、打印機(jī));
第二種是二進(jìn)制型(硬盤、光驅(qū)、U盤滑讓森)
–linux中所有硬件
–手動分區(qū)
–A、至少有兩個分區(qū)
/ 根分區(qū)
SWAP 交換分區(qū)(物理內(nèi)存大小的兩倍)
–B、個人桌面分區(qū)
/
/boot 128MB is enough
/usr
SWAP
/tmp(用于光盤刻錄)
2、linux目錄說明
–/dev/xxyN
–xx (分區(qū)所在設(shè)備類型:hd–IDE硬盤 sd–SCSI硬盤)
–y (標(biāo)明分區(qū)所在設(shè)備
例如:/dev/hda 之一個IDE硬盤 或 /dev/hdb 第二個IDE硬盤 或 /dev/sdb 第二個SCSI硬盤)
–N (數(shù)字代表分區(qū):1-4–主分區(qū)或擴(kuò)展分區(qū);邏輯分區(qū)從5開始!
例如:/dev/hda3 之一個IDE硬盤上的第三個主分區(qū)或擴(kuò)展分區(qū)
/dev/sdb6 第二個SCSI硬盤上的第二個邏輯分區(qū))
3、linux目錄結(jié)構(gòu)
/ 根目錄,更高級別
/bin 系統(tǒng)基本命令存放目錄(/usr/bin)
/boot linux的內(nèi)核及引導(dǎo)系統(tǒng)程序文件存放目錄(如:vmlinuz、initrd.img)
一般情況下,GRUB或LILO系統(tǒng)引導(dǎo)管理也位于這個目錄
/dev 設(shè)備文件存儲目錄,如聲卡、光驅(qū)…
/ect 存放系統(tǒng)設(shè)置文件(如用戶賬號密碼、服務(wù)器配置文件等)
/home 普通用戶家目錄,默認(rèn)存放目錄
/lib 庫文件存放目錄
/lost+found 在ext2或ext3文件系統(tǒng)中,當(dāng)系統(tǒng)以外崩潰或機(jī)器意外關(guān)機(jī),而產(chǎn)生一些文件碎片放在這里。
當(dāng)系統(tǒng)啟動的過程中,fsck工具會檢查這里,并修復(fù)已經(jīng)損壞的文件系統(tǒng)。
有事喜用發(fā)生問題,有很多的文件被移到這個目錄中,可能會用手工的方式來修復(fù),或者移文件到原來的位置上。
/media 即插即用型存儲設(shè)備的掛載點自動在這個目錄下創(chuàng)建。
如USB盤系統(tǒng)自動掛在后,會在這個目錄下產(chǎn)生一個目錄;
類似cdrom的目錄
/mnt 存放掛載存儲設(shè)備的掛載目錄,如cdrom等目錄
/opt 表示可選的意思,有些軟件包也會被安裝在此,也就是自定義軟件包,
比如OpenOffice,或者一些我們自己編譯的軟件包,也可安裝此處。
/proc 操作系統(tǒng)運行時,進(jìn)程(正在運行的程序)信息及內(nèi)核信息(比如CPU、硬盤分區(qū)、內(nèi)存信息等)存放在此。
/proc目錄是偽裝的文件系統(tǒng)proc的掛載目錄,proc并不是真正的文件系統(tǒng)
/root linux超級權(quán)限用戶root的家目錄
/in 大多是涉及系統(tǒng)管理的命令的存放,只有超級權(quán)限用戶root才可執(zhí)行命令存放,普通用戶無權(quán)限執(zhí)行此目錄下的命令
與 /usr/in; /usr/X11R6/in; usr/local/in 目錄相似
(in,只有root權(quán)限才能執(zhí)行)
/tmp 臨時文件目錄,有時用戶滑首運行程序的時候,會產(chǎn)生臨時文件。
/var/tmp目錄和此目錄相似
/usr 系統(tǒng)存放程序的目錄,如命令、幫助文件等。這個目錄下有很多的文件和目錄。
大部分Linux發(fā)行版提供的軟件包都安裝在此,涉及服務(wù)器的配置文件就安裝在/ect中。
/usr/share/fonts 字體目錄
/usr/share/man 或 /usr/share/doc 幫助目錄
/usr/bin 或 /usr/local/bin 或 /usr/X11R6/bin 普通信畝用戶可執(zhí)行文件目錄
/usr/in 或 /usr/local/in 或 /usr/X11R6/in 超級權(quán)限用戶root可執(zhí)行命令存放目錄
/usr/include 程序頭文件存放目錄
/var (vary)此目錄經(jīng)常變動
/var/log 用來存放系統(tǒng)日志
/var/www 用來定義Apache服務(wù)器站點存放
/var/lib 用來存放一些庫文件,如MySQL的,以及MySQL數(shù)據(jù)庫的存放地。
4、基本命令
–查看幫助 –help –?
–查看詳細(xì)幫助 man
–登錄 login
–退出窗口 exit
–關(guān)機(jī) shutdown
–重啟 reboot
–初始化 init (run level -/etc/inittab),0-6看第六部分的g
–進(jìn)入根目錄 cd /
–回上層目錄 cd ..
–相對路徑 cd dev
–絕對路徑 cd /dev
–查用戶名 whoami
–查當(dāng)前目錄 pwd
–列出當(dāng)前目錄內(nèi)容 ls
l(樹詳細(xì)顯示目錄內(nèi)容)
m(橫列顯示目錄內(nèi)容,是屏幕長度顯示)
a(列出全部文件,包括隱藏文件)
S(以文檔大小排序)
–創(chuàng)建目錄 mkdir dname
–刪除目錄 rmdir dname
rm -r-(遞歸刪除該目錄下所有內(nèi)容,詢問每個準(zhǔn)備刪除的文件)
rm -rf ***-(強(qiáng)制刪除該目錄下所有內(nèi)容,不詢問)
–創(chuàng)建空白文件 touch
(ps:從技術(shù)的角度來講,linux的文件后綴名沒有任何意義)
–復(fù)制 cp
cp -r **1 **2 (復(fù)制1到2中)
–移動 mv
mv -t **1 **2 (把2移動到1中)
–編輯文本 vi
–查看文本 cat 由之一行開始顯示文本內(nèi)容
tac 從最后一行顯示,可以看出 tac 是 cat 的倒著寫
more 一頁一頁的顯示文檔內(nèi)容
less 與 more 類似,可以往前翻頁
head 只看頭幾行
N(數(shù)字,可根據(jù)行數(shù)顯示)
tail 只看后幾行
N(數(shù)字,可根據(jù)行數(shù)顯示)
nl 顯示的時候,順序輸出行號
od 以二進(jìn)制位的方式讀取檔案內(nèi)容
–查找文本 find
如查找rc.local find /etc -name *.local
–查找命令信息及其位置 whereis 命令
如 whereis ls
–查看環(huán)境變量 echo $SHELL
如 echo $PATH (分大小寫:分隔符是:,windows是echo %path%;)
–鏈接 ln
如 ln joe.txt a (硬鏈接,如同復(fù)制一個新文件,joe.txt刪除后,a還存在)
a是鏈接的名稱,a和joe.txt同步,然后a的內(nèi)容和joe.txt一樣
joe.txt改變,a也跟著變
如 ln -s joe.txt b (軟鏈接,如同創(chuàng)建一個快捷方式,joe.txt刪除后,b不存在)
–wc 統(tǒng)計指定文本文件的行數(shù)、字?jǐn)?shù)、字符數(shù)
–grep(很常用) 在指定的文本文件中查找指定的字符串
grep 字符串 文件名
–col 見管道..
—-信息顯示命令—-
–date 顯示和設(shè)置日期
–stat 顯示指定文件的相關(guān)信息
–who、w 顯示在線登錄用戶
–whoami 顯示用戶自己的身份
–id顯示當(dāng)前用戶的id信息
–hostname 顯示主機(jī)名稱
–uname 顯示操作系統(tǒng)信息
–dmesg 顯示系統(tǒng)啟動信息
–du顯示指定的文件(目錄)已使用的磁盤空間
–df顯示文件系統(tǒng)磁盤空間的使用情況
–free 顯示當(dāng)前內(nèi)存和交換空間的使用情況
–fdisk -l 顯示磁盤信息
–locale 顯示當(dāng)前語言環(huán)境
5、掛載點(mount 設(shè)備目錄 掛載目錄)
–訪問設(shè)備 (那設(shè)備當(dāng)成一個文件,和另外一個文件夾進(jìn)行綁定)
–例如掛載光驅(qū):步驟 ———–OK!直接訪問光驅(qū)內(nèi)容
–卸載掛載設(shè)備(umount /dev/cdrom)–注意必須先退出掛載目錄,否則出現(xiàn)”device is busy”錯誤.
6、startup-shutdown(linux啟動流程)
–A、boot sequence(important) linux啟動過程
a. load bios(hardware information)
b. read MBR’s config to find out the OS
(MBR–Master Boot Record,硬盤之一個物理扇區(qū),柱面0、磁頭0、扇區(qū)1,包含主引導(dǎo)程序和硬盤分區(qū)表)
c. load the kernel of the OS
(加載為kernel核心的OS)
d. init process starts…
(啟動linux之一個進(jìn)程init)
e. execute /etc/rc.d/sysinit
(執(zhí)行系統(tǒng)最重要的配置文件,后臺啟用進(jìn)程)
(rc.d–run command)
f. start other modules(stc/modules.conf)
(開啟各種模塊,如內(nèi)存管理模塊、硬盤管理模塊)
g. execute the run level scripts
(系統(tǒng)啟動是分層次的,根據(jù)情況執(zhí)行,每個層次之間沒關(guān)系)
0 – 系統(tǒng)停機(jī)狀態(tài)
1 – 單用戶工作狀態(tài) root
2 – 多用戶狀態(tài)(沒有NFS)
3 – 多用戶狀態(tài)(有NFS)
NFS – Network File System 網(wǎng)絡(luò)文件系統(tǒng),聯(lián)網(wǎng)系統(tǒng)
4 – 系統(tǒng)未使用,留給用戶
5 – 圖形界面
6 – 系統(tǒng)正常關(guān)閉并重新啟動
如:cd /etc — 有rc0.d、rc1.d、rc2.d、rc3.d、rc4.d、rc5.d等多個文件夾,保存著各個層次執(zhí)行的進(jìn)程文件
h. execute /etc/rc.d/rc.local (重要)
(保存其它進(jìn)程腳本,如tomcat自動啟動,要修改此配置文件)
i. execute /bin/login
(登錄界面)
j. shell started…
7、vi 文本編輯器
–兩種模式:命令模式 編輯模式
–vi
(切換到編輯模式)
a append-光標(biāo)后添加
i insert-光標(biāo)前插入
o open-另起一行編輯
esc (切換回命令模式)
:w 存盤
:wq 存盤退出
:q 退出
:q! 不存盤退出
dd 刪除其中一行
dw 刪除一個單詞
(sudo gedit 文本 常用linux下的文本編輯器,比vi好用)
8、用戶設(shè)置
–切換用戶(switch user) su username
小技巧:直接exit切換
–添加用戶 useradd username (分配到某個用戶組)
(創(chuàng)建后會自動在/home目錄下創(chuàng)建該新用戶的文件夾,如/home/username)
–設(shè)置密碼 passwd username
–cd /etc
–查看用戶信息 more password
如新增的用戶信息:username:x:500:500::/home/username:/bin/bash
之一個數(shù)字,代表用戶組,當(dāng)添加用戶沒有指定用戶組時,系統(tǒng)會創(chuàng)建一個和用戶ID一樣的組ID;
第二個數(shù)字:用戶ID號;
用戶的目錄是/home/username;
用戶的SHELL是/bin/bash
(命令—>SHELL—>kenrel內(nèi)核)
SHELL有多種類型,如csh、bash(常用)、bsh、ksh、sh(最原始)
–添加用戶組 groupadd groupname
–查看用戶組信息 more group
–刪除用戶組 groupdel groupname
–修改用戶 usermod
–刪除用戶 userdel username
然后把/home的文件夾刪除了 rm -rf 文件夾
9、權(quán)限file privilege
–linux把文件的權(quán)限分成四種:r:read w:write x:execute -:none
如:-rw-r–r–
lrwxrwxrwx
drwxr-xr-x
drwxr-xr-x
之一個數(shù)字’-‘代表文件,其余是文件夾,后9位分為3組,每組有四種權(quán)限設(shè)置rwx-
之一位表示文件所有者
第二位表示和所有者在同一用戶組的用戶
第三位表示不在同一用戶組的用戶權(quán)限
–設(shè)置權(quán)限 (隨意應(yīng)用,靈活組合!)
1、普通用法
–添加權(quán)限
如:-rw-r–r– —> -rwxr-xr-x
–刪除權(quán)限
如:-rwxr-xr-x —> -rw-r–r–
–給自己添加權(quán)限
如此類推,組–g,其他人–o
如:chmod u+x -rw-r–r– —> -rwxr–r–
chmod g+x -rw-r–r– —> -rw-r-xr–
chmod o+x -rw-r–r– —> -rw-r–r-x
2、專業(yè)用法 chmod 755/777
–原理,八進(jìn)制轉(zhuǎn)二進(jìn)制
如755,, rwx r-x r-x
,, rwx rwx rwx
–修改所有者權(quán)限 chown (change owner)
如:chown 原來文件 file1 的所有者是 root,改成joe的
chown joe file1
10、管道(把上一個命令執(zhí)行的結(jié)果交給下一個命令)
–使用方法:
命令1|命令2|命令3……|命令n
–使用舉例
$ls -Rl /etc | more
(如 ls -Rl /etc (在控制臺模式下,無法返回前面過去的信息),因此需要管道執(zhí)行該查詢,實現(xiàn)分頁的工作, ls -Rl /etc | more)
$cat /etc/passwd | wc
(顯示文件結(jié)果,再數(shù)數(shù)有多少行)
$cat /etc/passwd | grep lrj
(顯示文件結(jié)果,再查找包含lrj的行)
#dmesg | grep eth0
(顯示系統(tǒng)啟動的信息,再查找包含eth0的行–真正含義,檢查網(wǎng)卡執(zhí)行信息是否正常)
$man bash | col -b > bash.txt
語 法:col
補(bǔ)充說明:在許多UNIX說明文件里,都有RLF控制字符。當(dāng)我們運用shell特殊字符”>”和”>>”,把說明文件的內(nèi)容輸出成純文本文件時,控制字符會變成亂碼,col指令則能有效濾除這些控制字符。
參 數(shù):
b 過濾掉所有的控制字符,包括RLF和HRLF。
f 濾除RLF字符,但允許將HRLF字符呈現(xiàn)出來。
x 以多個空格字符來表示跳格字符。
l 預(yù)設(shè)的內(nèi)存緩沖區(qū)有128列,您可以自行指定緩沖區(qū)的大小。
$ls -l | grep “^d”
(用正則表達(dá)式篩選出目錄列表中 頭字母為’d’ 的內(nèi)容–目錄)(^是正則表達(dá)式開頭部分)
$ls -l * | grep “^-” | wc -l
(列出目錄列表中 頭字符為’-‘的內(nèi)容–文件,并統(tǒng)計顯示的行數(shù)wc -l)
11、其他命令
–wall(warning all) 通知所有人
a.命令替換
如 wall `date`、 cd ‘pwd’、mkbootdisk $(uname -r)
b.重定向
重定向輸出:
如 ls > cmd.txt ,把文件寫到cmd.txt,不輸出在控制臺
ls >> cmd.txt ,把文件追加寫到cmd.txt
重定向輸入:
如 wall > cmd.txt,把文本內(nèi)容發(fā)給所有人
12、修改系統(tǒng)的默認(rèn)系統(tǒng)級別
常用3和5
3 – 多用戶狀態(tài)(有NFS)
NFS – Network File System 網(wǎng)絡(luò)文件系統(tǒng),聯(lián)網(wǎng)系統(tǒng)
5 – 圖形界面
PS.設(shè)置用戶權(quán)限: sudo chmod 777 目錄
4表示讀,2表示寫,1表示執(zhí)行.
之一位表示文件所有者,第二位表示和所有者在同一用戶組的用戶,第三位表示不在同一用戶組的用戶權(quán)限.
755表示文件所有者可讀寫,執(zhí)行.
第二位5表示與所有者在同一用戶組的可讀,可執(zhí)行,不可寫.
第三位5表示其它組可讀,可執(zhí)行,不可寫. 轉(zhuǎn)載于Joewalker在本人空間也有詳細(xì)說明
自己進(jìn)去看歷滑段看肢譽(yù)讓雹吧,貌似自己可以下載下來
1)文件操作
vi FileName 打開文件 FileName,并將光標(biāo)置于之一行首。
vi +n FileName 打開文件 FileName,并將光標(biāo)置于第 n 行首。
vi + FileName 打開文件 FileName,并將光標(biāo)置于最后一行。
vi + /pattern File 打開文件 File,并將光標(biāo)置于其中之一個于 pattern 匹配的字符串處。
vi –r FileName 在上次正用 vi 編輯 FileName 發(fā)生系統(tǒng)崩潰后,恢復(fù)FileName。
vi File1 … Filen 打開多個文件,依次對之進(jìn)行編輯。
:%!xxd 按十六進(jìn)制查看當(dāng)前文件
:%!xxd -r 從十六進(jìn)制返回正常模式
:n1,n2 co n3 將 n1 行到 n2 行之間的內(nèi)容拷貝到第 n3 行下。
:n1,n2 m m3 將 n1 行到 n2 行之間的內(nèi)容移至第 n3 行下。
:n1,n2 d 將 n1 行到 n2 行之間的內(nèi)容刪除。
:n1,n2 w filename 將 n1 行到 n2 行之間的內(nèi)容保存到文件 filename 中
:n1,n2 w! Command 將文件中n1行到n2行的內(nèi)容作為 Command的輸入并執(zhí)行之,局渣派
若不指定 n1、n2,則將整個文件桐賀內(nèi)容作為 Command 的輸入。
:r! Command 將命令 Command 的輸出結(jié)果放到當(dāng)前行。
:nr 文件> 把文件>插入到第n行
:so 文件> 讀取文件>,再執(zhí)行文件里面的命令梁亂(文件中的命令應(yīng)該都是一些ex命令)
:l1,l2w 文件> 把第l1和第l2行之間的文本寫到文件>中去
:w >> 文件> 添加到文件>末尾. 也可以使用行號
:e! 重新編輯當(dāng)前文件,忽略所有的修改
·(、、)對應(yīng)顯示
% 顯示當(dāng)前(、 、)的對應(yīng)項
) :光標(biāo)移至句尾
( :光標(biāo)移至句首
}:光標(biāo)移至段落開頭
{:光標(biāo)移至段落結(jié)尾
·(、、)內(nèi)數(shù)據(jù)選擇
daB 刪除{}及其內(nèi)的內(nèi)容 (在非v可視模式下)
diB 刪除{}中的內(nèi)容
ab 選擇()中的內(nèi)容
ib 選擇()中的內(nèi)容( 不含() )
aB 選擇{}中的內(nèi)容
iB 選擇{}中的內(nèi)容( 不含{} )
·語法提示與自動補(bǔ)齊
插入模式下的單詞自動完成
行自動完成(超級有用)
·設(shè)置ctags
#ctags -f /usr/share/vim/vim63/funcs.tags -R /opt/j2sdk/src /usr/src/kernels/2.6.9-5.EL-i686
^p 自動補(bǔ)齊上下文已有相近項
^n 自動補(bǔ)齊~/.tags中的相近函數(shù)
^
按^t退出函數(shù)
:pta 函數(shù)名 預(yù)覽窗口快速打開相應(yīng)函數(shù)所在文件,并將光標(biāo)定位在對應(yīng)函數(shù)的開頭
K 顯示光標(biāo)下的C函數(shù)的man說明手冊
·變量定位
gd 轉(zhuǎn)到光標(biāo)下局部變量的定義處
Gd 轉(zhuǎn)到光標(biāo)下全局變量的定義處
·編譯選項
:cn 命令會把你帶到下一個出錯地點,而不考慮它在什么文件里。
:cc 命令會向你顯示當(dāng)前錯誤的編譯器輸出信息;
:cl 會生成一個列有項目所有錯誤的列表,以供瀏覽這些錯誤
3>光標(biāo)移動
·字符
h 光標(biāo)左移一個字符。
l 光標(biāo)右移一個字符。
·字
w 或 W 光標(biāo)右移一個字至字首。
B 或 b 光標(biāo)左移一個字至字首。
E 或 e 光標(biāo)右移一個字至字尾。
·句} 光標(biāo)移至句尾。
( 光標(biāo)移至句首。
·段) 光標(biāo)移至段落開頭。
{ 光標(biāo)移至段落結(jié)尾。
·行k 或 Ctrl+p 光標(biāo)上移一行。
j 或 Ctrl+n 光標(biāo)下移一行。
Enter 光標(biāo)下移一行。
nG 光標(biāo)移至第 n 行首。
n+ 光標(biāo)下移 n 行。
n- 光標(biāo)上移 n 行。
n$ 光標(biāo)移至第 n 行尾。
0 光標(biāo)移至當(dāng)前行首。
$ 光標(biāo)移至當(dāng)前行尾。
·屏幕
H 光標(biāo)移至屏幕頂行。
M 光標(biāo)移至屏幕中間行。
L 光標(biāo)移至屏幕最后行。
Ctrl+u 向文件首翻半屏。
Ctrl+d 向文件尾翻半屏。
Ctrl+f 向文件尾翻一屏。
Ctrl+b 向文件首翻一屏。
nz 將第 n 行滾至屏幕頂部。不指定 n 時將當(dāng)前行滾至屏幕頂。
4}插入
# 在文件中插入行號(不是顯示行號,是插入!)
:g/^/exec “s/^/”.strpart(line(“.”).” “, 0, 4)
·光標(biāo)
i 在光標(biāo)前插入。
a 在光標(biāo)后插入。
·行
I 在當(dāng)前行首插入。
A 在當(dāng)前行尾插入。
o 在當(dāng)前行之下一新行插入。
O 在當(dāng)前行之上新開一行插入。
5)替換
r 替換當(dāng)前字符。
R 替換當(dāng)前字符及其后的字符,直至按 ESC 鍵。
s 從當(dāng)前光標(biāo)位置處開始,以輸入的文本代替指定數(shù)目的字符。
S 刪除指定數(shù)目的行,并以所輸入的文本代替。
6)修改
ncw 或 nCW 修改指定數(shù)目的字符。
nCC 修改指定數(shù)目的行。
:r filename 將文件 filename 插入在當(dāng)前行之下
7)查找替換
/ 把狹義單詞 寫到 搜索命令行
/ 把廣義單詞 寫到 搜索命令行
:g/str/s/str1/str2/g
之一個g表示對每一個包括s1的行都進(jìn)行替換,
第二個g表示對每一行的所有進(jìn)行替換
包括str的行所有的str1都用str2替換
:%s/f $/for$/g 將每一行尾部的“f ”(f鍵和空格鍵)替換為for
:%s/^/mv /g 在每一行的頭部添加“mv ”(mv鍵和空格鍵)
:s/fred/a/g 替換fred成register a中的內(nèi)容,呵呵
:g/顯示含或的行
# 替換一個visual區(qū)域
# 選擇一個區(qū)域,然后輸入 :s/Emacs/Vim/ 等等,vim會自動進(jìn)入:模式
:’s/Emacs/Vim/g 前面的’是vim自動添加的
# 在多個文檔中搜索
:bufdo /searchstr
:argdo /searchstr
復(fù)制與剪切
xp 交換前后兩個字符的位置
ddp 上下兩行的位置交換
:g/fred/t$ 拷貝行,從fred到文件末尾(EOF)
9)窗口操作
:vne
:sp
:S
:new
:^w + ^r 交換兩個窗口的位置
^w = 窗口等寬
:res -n 窗口高度減小n
:res +n 窗口高度增大n
:vert res -n
:vert res +n
10)DOS格式文本轉(zhuǎn)成Unix格式文本
:1,$s/^M//g
11)書簽
在閱讀和編寫大的程序文件時,利用標(biāo)記(書簽)功能定位是十分有幫助的。
將光標(biāo)移到想做標(biāo)記的位置。假如做一個名為“debug1”的標(biāo)記,那么用戶可在命令模式下輸入做標(biāo)記的命令“mdebug1”,然后敲入回車鍵,一個名為“debug1”的標(biāo)記就做好了。
接下來用戶可以隨意將光標(biāo)移到其它的位置,當(dāng)在命令模式下輸入“`debug1”后,就能快速回到“debug1”的標(biāo)記所在行的行首。
馨竹:13
12)刪除操作
:%s/r//g 刪除DOS方式的回車^M
:%s= *$== 刪除行尾空白
:%s/^(.*)n1/1$/ 刪除重復(fù)行
:%s/^.pdf/new.pdf/ 只是刪除之一個pdf
:%s/// 又是刪除多行注釋(咦?為什么要說「又」呢?)
:g/^s*$/d 刪除所有空行
:g!/^dd/d 刪除不含字符串’dd’的行
:v/^dd/d 同上 (譯釋:v == g!,就是不匹配!)
:g/str1/,/str2/d 刪除所有之一個含str1到之一個含str2之間的行
:v/./.,/./-1join 壓縮空行
:g/^$/,/./-j 壓縮空行
:s/p1/p2/g:將當(dāng)前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:將文件中所有p1均用p2替換
ndw 或 ndW 刪除光標(biāo)處開始及其后的 n-1 個字符。
d0 刪至行首。
d$ 刪至行尾。
ndd 刪除當(dāng)前行及其后 n-1 行。
x 或 X 刪除一個字符。
Ctrl+u 刪除輸入方式下所輸入的文本。
^R 恢復(fù)u的操作
J 把下一行合并到當(dāng)前行尾
V 選擇一行
^V 按下^V后即可進(jìn)行矩形的選擇了
aw 選擇單詞
iw 內(nèi)部單詞(無空格)
as 選擇句子
is 選擇句子(無空格)
ap 選擇段落
ip 選擇段落(無空格)
D 刪除到行尾
x,y 刪除與復(fù)制包含高亮區(qū)
dl 刪除當(dāng)前字符(與x命令功能相同)
d0 刪除到某一行的開始位置
d^ 刪除到某一行的之一個字符位置(不包括空格或TAB字符)
dw 刪除到某個單詞的結(jié)尾位置
d3w 刪除到第三個單詞的結(jié)尾位置
db 刪除到某個單詞的開始位置
dW 刪除到某個以空格作為分隔符的單詞的結(jié)尾位置
dB 刪除到某個以空格作為分隔符的單詞的開始位置
d7B 刪除到前面7個以空格作為分隔符的單詞的開始位置
d) 刪除到某個語句的結(jié)尾位置
d4) 刪除到第四個語句的結(jié)尾位置
d( 刪除到某個語句的開始位置
d) 刪除到某個段落的結(jié)尾位置
d{ 刪除到某個段落的開始位置
d7{ 刪除到當(dāng)前段落起始位置之前的第7個段落位置
dd 刪除當(dāng)前行
d/text 刪除從文本中出現(xiàn)“text”中所指定字樣的位置,
一直向前直到下一個該字樣所出現(xiàn)的位置(但不包括該字樣)之間的內(nèi)容
dfc 刪除從文本中出現(xiàn)字符“c”的位置,一直向前直到下一個該字符所出現(xiàn)的位置(包括該字符)之間的內(nèi)容
dtc 刪除當(dāng)前行直到下一個字符“c”所出現(xiàn)位置之間的內(nèi)容
D 刪除到某一行的結(jié)尾
d$ 刪除到某一行的結(jié)尾
5dd 刪除從當(dāng)前行所開始的5行內(nèi)容
dL 刪除直到屏幕上最后一行的內(nèi)容
dH 刪除直到屏幕上之一行的內(nèi)容
dG 刪除直到工作緩存區(qū)結(jié)尾的內(nèi)容
d1G 刪除直到工作緩存區(qū)開始的內(nèi)容
修改命令操作
r 更改當(dāng)前字符
cw 修改到某個單詞的結(jié)尾位置
c3w 修改到第三個單詞的結(jié)尾位置
cb 修改到某個單詞的開始位置
cW 修改到某個以空格作為分隔符的單詞的結(jié)尾位置
cB 修改到某個以空格作為分隔符的單詞的開始位置
c7B 修改到前面7個以空格作為分隔符的單詞的開始位置
c0 修改到某行的結(jié)尾位置
c} 修改到某個語句的結(jié)尾位置
c4} 修改到第四個語句的結(jié)尾位置
c( 修改到某個語句的開始位置
c) 修改到某個段落的結(jié)尾位置
c{ 修改到某個段落的開始位置
c7{ 修改到當(dāng)前段落起始位置之前的第7個段落位置
ctc 修改當(dāng)前行直到下一個字符c所出現(xiàn)位置之間的內(nèi)容
C 修改到某一行的結(jié)尾
cc 修改當(dāng)前行
5cc 修改從當(dāng)前行所開始的5行內(nèi)容
. 重復(fù)上一次修改!
13}Set 選項設(shè)置
set all 列出所有選項設(shè)置情況。
set term 設(shè)置終端類型。
set ignorecase 在搜索中忽略大小寫。
set list 顯示制表位(^I)和行尾標(biāo)志($)。
set number 顯示行號。
set showmode 示用戶處在什么模式下
set report 顯示由面向行的命令修改國的行數(shù)目。
set terse 顯示簡短的警告信息。
set warn 在轉(zhuǎn)到別的文件時,若沒有保存當(dāng)前文件則顯示 No write 信息。
set autowrite 在“:n”和“:!”命令之前都自動保存文件
set nomagic 允許在搜索模式中,使用前面不帶\的特殊字符。
set nowrapscan 禁止 vi 在搜索到達(dá)文件兩端時,又從另一端開始。
set mesg 允許 vi 顯示其他用戶用 write 寫到自己終端上的信息。
autoindent (ai) noai 使新行自動縮進(jìn),和上(下)行的位置對齊
autoprint (ap) ap 每條命令之后都顯示出修改之處
autowrite (aw) noaw 在:n,:!命令之前都自動保存文件
beautify (bf) nobf 在輸入的時候忽略所有的控制字符(除了制表鍵(tab),換行(newline),進(jìn)紙(formfeed))
directory= (dir=) /tmp 存放緩沖區(qū)的目錄名
edcompatible noedcompatible 在替換的時候使用類ed的用法
errorbells (eb) errorbells 出錯的時候響鈴
exrc (ex) noexrc 允許在主目錄(home)外面之外放.exrc文件
hardtabs= (ht=) 8 設(shè)置硬制表的邊界
ignore case (ic) noic 正規(guī)式里忽略大小寫
lisp nolisp 打開lisp模式
list nolist 顯示所有的制表鍵和行的結(jié)尾
magic agic 可以使用更多的正規(guī)表達(dá)式
mesg mesg 允許向終端發(fā)送消息
number (nu) nonumber 顯示行號
open open 允許開放和可視化
optimize (opt) optimize 優(yōu)化吞吐量,打印時不發(fā)回車
paragraphs= (para=) IPLPPPQPPLIbp 設(shè)置{ & }的分界符
prompt prompt 命令模式下的輸入給出:的提示符
readonly (ro) noro 除非用!號否則不準(zhǔn)保存文件
redraw noredraw 當(dāng)編輯的時候重繪屏幕
remap remap 允許宏指向其他的宏
report= 5 如果影響的行數(shù)>這個數(shù)的話就報告
scroll 1/2 window 下卷屏幕時滾動屏幕的數(shù)目, 同樣這也是z命令輸出的行數(shù)(z 輸出2倍滾屏的大小)
sections= SHNHH HU 定義節(jié)的末尾(當(dāng)使用命令> 時)
shell= (sh=) /bin/sh 缺省的SHELL,如果設(shè)置了環(huán)境變量SHELL的話,就使用變量
shiftwidth= (sw=) 8 當(dāng)使用移動(shift)命令時移動的字符數(shù)
showmatch () no 顯示{, }, (, ), 的匹配情況
showmode noshowmode 顯示你處在什么模式下面
slowopen (slow) 插入之后不要立刻更新顯示
tabstop= (ts=) 8 設(shè)置制表停止位(tabstop)的長度
taglength= (tl=) 0 重要標(biāo)記的字符個數(shù)(0表示所有的字符)
tags= tag, /usr/lib/tags 定義包含標(biāo)記的文件路徑
term= 設(shè)置終端類型
terse noterse 顯示簡短的錯誤信息
timeout (to) timeout 一秒鐘后鍵盤映射超時
ttytype= 設(shè)置終端類型
warn warn 顯示”No write since last change”信息
window= (w=) 可視模式下窗口的行數(shù)
wrapmargin= (wm=) 0 右邊距,大于0的話最右邊的單詞將折行,留出n個空白位置
wrapscan (ws) ws 查找到文件尾后再重頭開始
writeany (wa) nowa 可以保存到任意一個文件去
14}特殊字符
^ 匹配字符串位于行首。
$ 匹配字符串位于行尾。
. 用在模式串中,表示任何單個字符。
在命令模式下,重復(fù)上次的命令。
* 在模式串中,表示其前字符可出現(xiàn)任意多次。
用在模式串中,表示指定方位內(nèi)字符,其中可用-表示一個字
符范圍,用^表示不在某個范圍內(nèi)的字符。
ESC 從插入狀態(tài)轉(zhuǎn)換到命令狀態(tài)
^
15>大小寫轉(zhuǎn)換
guu 行小寫
gUU 行大寫
g~~ 行翻轉(zhuǎn)(當(dāng)然指大小寫啦)
guw 字小寫(狹義字) 譯注:建議對比iw
gUw 字大寫(狹義字)
g~w 字翻轉(zhuǎn)(狹義字)
vEU 字大寫(廣義字)
vE~ 字翻轉(zhuǎn)(廣義字)
ggguG 把整個文章全部小寫(ft!bt!)
16) 跳轉(zhuǎn)足跡’. 跳到最后修改的那一行 (超級有用)(ft,怎么又是這個評價)
`. 不僅跳到最后修改的那一行,還要定位到修改點
依次沿著你的跳轉(zhuǎn)記錄向回跳 (從最近的一次開始)
依次沿著你的跳轉(zhuǎn)記錄向前跳
:ju(mps) 列出你跳轉(zhuǎn)的足跡
17)命令歷史
:history 列出歷史命令記錄
:his c 命令行命令歷史
:his s 搜索命令歷史
q/ 搜索命令歷史的窗口
q 命令行命令歷史的窗口
: 歷史命令記錄的窗口
18>寄存器
# 列出寄存器(Registers)
:reg 顯示所有當(dāng)前的registers
“1p 表示引用register,1表示一個名字叫做1的register,p就是粘貼(paste)命令
譯釋:
“也用來定義register
先輸入 “,表示定義register
然后輸入名字,如0~9,a~z
然后執(zhí)行刪除或復(fù)制命令,如dd或y,
或者是visual模式下的d(刪除選中的部分)或y(復(fù)制選中的部分)
則被刪除或復(fù)制的部分就被存入了這個命名的register
觀察:一個特殊的register, “” ,里面存儲了一個匿名的刪除/復(fù)制
在你執(zhí)行dd或y的時候,被作用的部分被存到了””中
19}命令行
“ayy@a 把當(dāng)前行作為一個Vim命令來執(zhí)行
譯釋:”ayy 是定義當(dāng)前行到register a,然后@a是執(zhí)行register a中存儲的指令
10yy copy 當(dāng)前行以下10行
11} 排序
:%!sort -u 使用sort程序排序整個文件(用結(jié)果重寫文件)
!1) sort -u 排序當(dāng)前段落 (只能在normal模式下使用!!)
:.,+5!sort 排序當(dāng)前行及以下5行
20) 列操作
:%s= +$=&&= 復(fù)制最后一列
:%s= f+$=&&= 一樣的功能
:%s= S+$=&& ft,還是一樣
:s/(.*).*)/2″1/ 顛倒用:分割的兩個字段
:%s(w+s+))str1:1str2: 處理列,替換所有在第三列中的str1
:%sw+)(.*s+)(w+)$:321: 交換之一列和最后一列 (共4列)
·.vimrc
” Use Vim settings, rather then Vi settings (much better!).
set nocompatible
“c風(fēng)格的縮進(jìn)
:set expandtab “不使用tab只使用空格
:set cindent shiftwidth=4
“自動縮進(jìn)
:set ai
“語法
“:set filetype=java
:set syntax=java
“鍵入)、> 、},顯示(、
:set showmatch
“手工定義折疊
:set foldmethod=manual
“標(biāo)簽文件位置
set tags=/usr/share/vim/vim63/funcs.tags
“在插入模式下通過按N自動地將任何類、方法或者字段名補(bǔ)齊
set complete+=k
” 不要用聲音煩我!
set visualbell
“歷史
:set history=50
“顯示行列位置
:set ruler
“設(shè)置字符編碼
set fileencodings=gb2312
“set encoding=euc-cn
“設(shè)置ruler
set ruler
“顯示當(dāng)前命令
set showcmd
“incsearch
set incsearch
” allow backspacing over everything in insert mode
set backspace=indent,eol,start
“自動檢測文件類型
:filetype on
Linux 常用命令(要求全而精)
1、linux分區(qū)
–在linux里面所有的設(shè)備、任何東西,在linux看來都是文件。
–文件在它看來,有兩種形式:
之一種是字符型(鍵盤輸入、打印機(jī));
第二種是二進(jìn)制型(硬盤、光驅(qū)、U盤滑讓森)
–linux中所有硬件
–手動分區(qū)
–A、至少有兩個分區(qū)
/ 根分區(qū)
SWAP 交換分區(qū)(物理內(nèi)存大小的兩倍)
–B、個人桌面分區(qū)
/
/boot 128MB is enough
/usr
SWAP
/tmp(用于光盤刻錄)
2、linux目錄說明
–/dev/xxyN
–xx (分區(qū)所在設(shè)備類型:hd–IDE硬盤 sd–SCSI硬盤)
–y (標(biāo)明分區(qū)所在設(shè)備
例如:/dev/hda 之一個IDE硬盤 或 /dev/hdb 第二個IDE硬盤 或 /dev/sdb 第二個SCSI硬盤)
–N (數(shù)字代表分區(qū):1-4–主分區(qū)或擴(kuò)展分區(qū);邏輯分區(qū)從5開始!
例如:/dev/hda3 之一個IDE硬盤上的第三個主分區(qū)或擴(kuò)展分區(qū)
/dev/sdb6 第二個SCSI硬盤上的第二個邏輯分區(qū))
3、linux目錄結(jié)構(gòu)
/ 根目錄,更高級別
/bin 系統(tǒng)基本命令存放目錄(/usr/bin)
/boot linux的內(nèi)核及引導(dǎo)系統(tǒng)程序文件存放目錄(如:vmlinuz、initrd.img)
一般情況下,GRUB或LILO系統(tǒng)引導(dǎo)管理也位于這個目錄
/dev 設(shè)備文件存儲目錄,如聲卡、光驅(qū)…
/ect 存放系統(tǒng)設(shè)置文件(如用戶賬號密碼、服務(wù)器配置文件等)
/home 普通用戶家目錄,默認(rèn)存放目錄
/lib 庫文件存放目錄
/lost+found 在ext2或ext3文件系統(tǒng)中,當(dāng)系統(tǒng)以外崩潰或機(jī)器意外關(guān)機(jī),而產(chǎn)生一些文件碎片放在這里。
當(dāng)系統(tǒng)啟動的過程中,fsck工具會檢查這里,并修復(fù)已經(jīng)損壞的文件系統(tǒng)。
有事喜用發(fā)生問題,有很多的文件被移到這個目錄中,可能會用手工的方式來修復(fù),或者移文件到原來的位置上。
/media 即插即用型存儲設(shè)備的掛載點自動在這個目錄下創(chuàng)建。
如USB盤系統(tǒng)自動掛在后,會在這個目錄下產(chǎn)生一個目錄;
類似cdrom的目錄
/mnt 存放掛載存儲設(shè)備的掛載目錄,如cdrom等目錄
/opt 表示可選的意思,有些軟件包也會被安裝在此,也就是自定義軟件包,
比如OpenOffice,或者一些我們自己編譯的軟件包,也可安裝此處。
/proc 操作系統(tǒng)運行時,進(jìn)程(正在運行的程序)信息及內(nèi)核信息(比如CPU、硬盤分區(qū)、內(nèi)存信息等)存放在此。
/proc目錄是偽裝的文件系統(tǒng)proc的掛載目錄,proc并不是真正的文件系統(tǒng)
/root linux超級權(quán)限用戶root的家目錄
/in 大多是涉及系統(tǒng)管理的命令的存放,只有超級權(quán)限用戶root才可執(zhí)行命令存放,普通用戶無權(quán)限執(zhí)行此目錄下的命令
與 /usr/in; /usr/X11R6/in; usr/local/in 目錄相似
(in,只有root權(quán)限才能執(zhí)行)
/tmp 臨時文件目錄,有時用戶滑首運行程序的時候,會產(chǎn)生臨時文件。
/var/tmp目錄和此目錄相似
/usr 系統(tǒng)存放程序的目錄,如命令、幫助文件等。這個目錄下有很多的文件和目錄。
大部分Linux發(fā)行版提供的軟件包都安裝在此,涉及服務(wù)器的配置文件就安裝在/ect中。
/usr/share/fonts 字體目錄
/usr/share/man 或 /usr/share/doc 幫助目錄
/usr/bin 或 /usr/local/bin 或 /usr/X11R6/bin 普通信畝用戶可執(zhí)行文件目錄
/usr/in 或 /usr/local/in 或 /usr/X11R6/in 超級權(quán)限用戶root可執(zhí)行命令存放目錄
/usr/include 程序頭文件存放目錄
/var (vary)此目錄經(jīng)常變動
/var/log 用來存放系統(tǒng)日志
/var/www 用來定義Apache服務(wù)器站點存放
/var/lib 用來存放一些庫文件,如MySQL的,以及MySQL數(shù)據(jù)庫的存放地。
4、基本命令
–查看幫助 –help –?
–查看詳細(xì)幫助 man
–登錄 login
–退出窗口 exit
–關(guān)機(jī) shutdown
–重啟 reboot
–初始化 init (run level -/etc/inittab),0-6看第六部分的g
–進(jìn)入根目錄 cd /
–回上層目錄 cd ..
–相對路徑 cd dev
–絕對路徑 cd /dev
–查用戶名 whoami
–查當(dāng)前目錄 pwd
–列出當(dāng)前目錄內(nèi)容 ls
l(樹詳細(xì)顯示目錄內(nèi)容)
m(橫列顯示目錄內(nèi)容,是屏幕長度顯示)
a(列出全部文件,包括隱藏文件)
S(以文檔大小排序)
–創(chuàng)建目錄 mkdir dname
–刪除目錄 rmdir dname
rm -r-(遞歸刪除該目錄下所有內(nèi)容,詢問每個準(zhǔn)備刪除的文件)
rm -rf ***-(強(qiáng)制刪除該目錄下所有內(nèi)容,不詢問)
–創(chuàng)建空白文件 touch
(ps:從技術(shù)的角度來講,linux的文件后綴名沒有任何意義)
–復(fù)制 cp
cp -r **1 **2 (復(fù)制1到2中)
–移動 mv
mv -t **1 **2 (把2移動到1中)
–編輯文本 vi
–查看文本 cat 由之一行開始顯示文本內(nèi)容
tac 從最后一行顯示,可以看出 tac 是 cat 的倒著寫
more 一頁一頁的顯示文檔內(nèi)容
less 與 more 類似,可以往前翻頁
head 只看頭幾行
N(數(shù)字,可根據(jù)行數(shù)顯示)
tail 只看后幾行
N(數(shù)字,可根據(jù)行數(shù)顯示)
nl 顯示的時候,順序輸出行號
od 以二進(jìn)制位的方式讀取檔案內(nèi)容
–查找文本 find
如查找rc.local find /etc -name *.local
–查找命令信息及其位置 whereis 命令
如 whereis ls
–查看環(huán)境變量 echo $SHELL
如 echo $PATH (分大小寫:分隔符是:,windows是echo %path%;)
–鏈接 ln
如 ln joe.txt a (硬鏈接,如同復(fù)制一個新文件,joe.txt刪除后,a還存在)
a是鏈接的名稱,a和joe.txt同步,然后a的內(nèi)容和joe.txt一樣
joe.txt改變,a也跟著變
如 ln -s joe.txt b (軟鏈接,如同創(chuàng)建一個快捷方式,joe.txt刪除后,b不存在)
–wc 統(tǒng)計指定文本文件的行數(shù)、字?jǐn)?shù)、字符數(shù)
–grep(很常用) 在指定的文本文件中查找指定的字符串
grep 字符串 文件名
–col 見管道..
—-信息顯示命令—-
–date 顯示和設(shè)置日期
–stat 顯示指定文件的相關(guān)信息
–who、w 顯示在線登錄用戶
–whoami 顯示用戶自己的身份
–id顯示當(dāng)前用戶的id信息
–hostname 顯示主機(jī)名稱
–uname 顯示操作系統(tǒng)信息
–dmesg 顯示系統(tǒng)啟動信息
–du顯示指定的文件(目錄)已使用的磁盤空間
–df顯示文件系統(tǒng)磁盤空間的使用情況
–free 顯示當(dāng)前內(nèi)存和交換空間的使用情況
–fdisk -l 顯示磁盤信息
–locale 顯示當(dāng)前語言環(huán)境
5、掛載點(mount 設(shè)備目錄 掛載目錄)
–訪問設(shè)備 (那設(shè)備當(dāng)成一個文件,和另外一個文件夾進(jìn)行綁定)
–例如掛載光驅(qū):步驟 ———–OK!直接訪問光驅(qū)內(nèi)容
–卸載掛載設(shè)備(umount /dev/cdrom)–注意必須先退出掛載目錄,否則出現(xiàn)”device is busy”錯誤.
6、startup-shutdown(linux啟動流程)
–A、boot sequence(important) linux啟動過程
a. load bios(hardware information)
b. read MBR’s config to find out the OS
(MBR–Master Boot Record,硬盤之一個物理扇區(qū),柱面0、磁頭0、扇區(qū)1,包含主引導(dǎo)程序和硬盤分區(qū)表)
c. load the kernel of the OS
(加載為kernel核心的OS)
d. init process starts…
(啟動linux之一個進(jìn)程init)
e. execute /etc/rc.d/sysinit
(執(zhí)行系統(tǒng)最重要的配置文件,后臺啟用進(jìn)程)
(rc.d–run command)
f. start other modules(stc/modules.conf)
(開啟各種模塊,如內(nèi)存管理模塊、硬盤管理模塊)
g. execute the run level scripts
(系統(tǒng)啟動是分層次的,根據(jù)情況執(zhí)行,每個層次之間沒關(guān)系)
0 – 系統(tǒng)停機(jī)狀態(tài)
1 – 單用戶工作狀態(tài) root
2 – 多用戶狀態(tài)(沒有NFS)
3 – 多用戶狀態(tài)(有NFS)
NFS – Network File System 網(wǎng)絡(luò)文件系統(tǒng),聯(lián)網(wǎng)系統(tǒng)
4 – 系統(tǒng)未使用,留給用戶
5 – 圖形界面
6 – 系統(tǒng)正常關(guān)閉并重新啟動
如:cd /etc — 有rc0.d、rc1.d、rc2.d、rc3.d、rc4.d、rc5.d等多個文件夾,保存著各個層次執(zhí)行的進(jìn)程文件
h. execute /etc/rc.d/rc.local (重要)
(保存其它進(jìn)程腳本,如tomcat自動啟動,要修改此配置文件)
i. execute /bin/login
(登錄界面)
j. shell started…
7、vi 文本編輯器
–兩種模式:命令模式 編輯模式
–vi
(切換到編輯模式)
a append-光標(biāo)后添加
i insert-光標(biāo)前插入
o open-另起一行編輯
esc (切換回命令模式)
:w 存盤
:wq 存盤退出
:q 退出
:q! 不存盤退出
dd 刪除其中一行
dw 刪除一個單詞
(sudo gedit 文本 常用linux下的文本編輯器,比vi好用)
8、用戶設(shè)置
–切換用戶(switch user) su username
小技巧:直接exit切換
–添加用戶 useradd username (分配到某個用戶組)
(創(chuàng)建后會自動在/home目錄下創(chuàng)建該新用戶的文件夾,如/home/username)
–設(shè)置密碼 passwd username
–cd /etc
–查看用戶信息 more password
如新增的用戶信息:username:x:500:500::/home/username:/bin/bash
之一個數(shù)字,代表用戶組,當(dāng)添加用戶沒有指定用戶組時,系統(tǒng)會創(chuàng)建一個和用戶ID一樣的組ID;
第二個數(shù)字:用戶ID號;
用戶的目錄是/home/username;
用戶的SHELL是/bin/bash
(命令—>SHELL—>kenrel內(nèi)核)
SHELL有多種類型,如csh、bash(常用)、bsh、ksh、sh(最原始)
–添加用戶組 groupadd groupname
–查看用戶組信息 more group
–刪除用戶組 groupdel groupname
–修改用戶 usermod
–刪除用戶 userdel username
然后把/home的文件夾刪除了 rm -rf 文件夾
9、權(quán)限file privilege
–linux把文件的權(quán)限分成四種:r:read w:write x:execute -:none
如:-rw-r–r–
lrwxrwxrwx
drwxr-xr-x
drwxr-xr-x
之一個數(shù)字’-‘代表文件,其余是文件夾,后9位分為3組,每組有四種權(quán)限設(shè)置rwx-
之一位表示文件所有者
第二位表示和所有者在同一用戶組的用戶
第三位表示不在同一用戶組的用戶權(quán)限
–設(shè)置權(quán)限 (隨意應(yīng)用,靈活組合!)
1、普通用法
–添加權(quán)限
如:-rw-r–r– —> -rwxr-xr-x
–刪除權(quán)限
如:-rwxr-xr-x —> -rw-r–r–
–給自己添加權(quán)限
如此類推,組–g,其他人–o
如:chmod u+x -rw-r–r– —> -rwxr–r–
chmod g+x -rw-r–r– —> -rw-r-xr–
chmod o+x -rw-r–r– —> -rw-r–r-x
2、專業(yè)用法 chmod 755/777
–原理,八進(jìn)制轉(zhuǎn)二進(jìn)制
如755,, rwx r-x r-x
,, rwx rwx rwx
–修改所有者權(quán)限 chown (change owner)
如:chown 原來文件 file1 的所有者是 root,改成joe的
chown joe file1
10、管道(把上一個命令執(zhí)行的結(jié)果交給下一個命令)
–使用方法:
命令1|命令2|命令3……|命令n
–使用舉例
$ls -Rl /etc | more
(如 ls -Rl /etc (在控制臺模式下,無法返回前面過去的信息),因此需要管道執(zhí)行該查詢,實現(xiàn)分頁的工作, ls -Rl /etc | more)
$cat /etc/passwd | wc
(顯示文件結(jié)果,再數(shù)數(shù)有多少行)
$cat /etc/passwd | grep lrj
(顯示文件結(jié)果,再查找包含lrj的行)
#dmesg | grep eth0
(顯示系統(tǒng)啟動的信息,再查找包含eth0的行–真正含義,檢查網(wǎng)卡執(zhí)行信息是否正常)
$man bash | col -b > bash.txt
語 法:col
補(bǔ)充說明:在許多UNIX說明文件里,都有RLF控制字符。當(dāng)我們運用shell特殊字符”>”和”>>”,把說明文件的內(nèi)容輸出成純文本文件時,控制字符會變成亂碼,col指令則能有效濾除這些控制字符。
參 數(shù):
b 過濾掉所有的控制字符,包括RLF和HRLF。
f 濾除RLF字符,但允許將HRLF字符呈現(xiàn)出來。
x 以多個空格字符來表示跳格字符。
l 預(yù)設(shè)的內(nèi)存緩沖區(qū)有128列,您可以自行指定緩沖區(qū)的大小。
$ls -l | grep “^d”
(用正則表達(dá)式篩選出目錄列表中 頭字母為’d’ 的內(nèi)容–目錄)(^是正則表達(dá)式開頭部分)
$ls -l * | grep “^-” | wc -l
(列出目錄列表中 頭字符為’-‘的內(nèi)容–文件,并統(tǒng)計顯示的行數(shù)wc -l)
11、其他命令
–wall(warning all) 通知所有人
a.命令替換
如 wall `date`、 cd ‘pwd’、mkbootdisk $(uname -r)
b.重定向
重定向輸出:
如 ls > cmd.txt ,把文件寫到cmd.txt,不輸出在控制臺
ls >> cmd.txt ,把文件追加寫到cmd.txt
重定向輸入:
如 wall > cmd.txt,把文本內(nèi)容發(fā)給所有人
12、修改系統(tǒng)的默認(rèn)系統(tǒng)級別
常用3和5
3 – 多用戶狀態(tài)(有NFS)
NFS – Network File System 網(wǎng)絡(luò)文件系統(tǒng),聯(lián)網(wǎng)系統(tǒng)
5 – 圖形界面
PS.設(shè)置用戶權(quán)限: sudo chmod 777 目錄
4表示讀,2表示寫,1表示執(zhí)行.
之一位表示文件所有者,第二位表示和所有者在同一用戶組的用戶,第三位表示不在同一用戶組的用戶權(quán)限.
755表示文件所有者可讀寫,執(zhí)行.
第二位5表示與所有者在同一用戶組的可讀,可執(zhí)行,不可寫.
第三位5表示其它組可讀,可執(zhí)行,不可寫. 轉(zhuǎn)載于Joewalker在本人空間也有詳細(xì)說明
自己進(jìn)去看歷滑段看肢譽(yù)讓雹吧,貌似自己可以下載下來
1)文件操作
vi FileName 打開文件 FileName,并將光標(biāo)置于之一行首。
vi +n FileName 打開文件 FileName,并將光標(biāo)置于第 n 行首。
vi + FileName 打開文件 FileName,并將光標(biāo)置于最后一行。
vi + /pattern File 打開文件 File,并將光標(biāo)置于其中之一個于 pattern 匹配的字符串處。
vi –r FileName 在上次正用 vi 編輯 FileName 發(fā)生系統(tǒng)崩潰后,恢復(fù)FileName。
vi File1 … Filen 打開多個文件,依次對之進(jìn)行編輯。
:%!xxd 按十六進(jìn)制查看當(dāng)前文件
:%!xxd -r 從十六進(jìn)制返回正常模式
:n1,n2 co n3 將 n1 行到 n2 行之間的內(nèi)容拷貝到第 n3 行下。
:n1,n2 m m3 將 n1 行到 n2 行之間的內(nèi)容移至第 n3 行下。
:n1,n2 d 將 n1 行到 n2 行之間的內(nèi)容刪除。
:n1,n2 w filename 將 n1 行到 n2 行之間的內(nèi)容保存到文件 filename 中
:n1,n2 w! Command 將文件中n1行到n2行的內(nèi)容作為 Command的輸入并執(zhí)行之,局渣派
若不指定 n1、n2,則將整個文件桐賀內(nèi)容作為 Command 的輸入。
:r! Command 將命令 Command 的輸出結(jié)果放到當(dāng)前行。
:nr 文件> 把文件>插入到第n行
:so 文件> 讀取文件>,再執(zhí)行文件里面的命令梁亂(文件中的命令應(yīng)該都是一些ex命令)
:l1,l2w 文件> 把第l1和第l2行之間的文本寫到文件>中去
:w >> 文件> 添加到文件>末尾. 也可以使用行號
:e! 重新編輯當(dāng)前文件,忽略所有的修改
·(、、)對應(yīng)顯示
% 顯示當(dāng)前(、 、)的對應(yīng)項
) :光標(biāo)移至句尾
( :光標(biāo)移至句首
}:光標(biāo)移至段落開頭
{:光標(biāo)移至段落結(jié)尾
·(、、)內(nèi)數(shù)據(jù)選擇
daB 刪除{}及其內(nèi)的內(nèi)容 (在非v可視模式下)
diB 刪除{}中的內(nèi)容
ab 選擇()中的內(nèi)容
ib 選擇()中的內(nèi)容( 不含() )
aB 選擇{}中的內(nèi)容
iB 選擇{}中的內(nèi)容( 不含{} )
·語法提示與自動補(bǔ)齊
插入模式下的單詞自動完成
行自動完成(超級有用)
·設(shè)置ctags
#ctags -f /usr/share/vim/vim63/funcs.tags -R /opt/j2sdk/src /usr/src/kernels/2.6.9-5.EL-i686
^p 自動補(bǔ)齊上下文已有相近項
^n 自動補(bǔ)齊~/.tags中的相近函數(shù)
^
按^t退出函數(shù)
:pta 函數(shù)名 預(yù)覽窗口快速打開相應(yīng)函數(shù)所在文件,并將光標(biāo)定位在對應(yīng)函數(shù)的開頭
K 顯示光標(biāo)下的C函數(shù)的man說明手冊
·變量定位
gd 轉(zhuǎn)到光標(biāo)下局部變量的定義處
Gd 轉(zhuǎn)到光標(biāo)下全局變量的定義處
·編譯選項
:cn 命令會把你帶到下一個出錯地點,而不考慮它在什么文件里。
:cc 命令會向你顯示當(dāng)前錯誤的編譯器輸出信息;
:cl 會生成一個列有項目所有錯誤的列表,以供瀏覽這些錯誤
3>光標(biāo)移動
·字符
h 光標(biāo)左移一個字符。
l 光標(biāo)右移一個字符。
·字
w 或 W 光標(biāo)右移一個字至字首。
B 或 b 光標(biāo)左移一個字至字首。
E 或 e 光標(biāo)右移一個字至字尾。
·句} 光標(biāo)移至句尾。
( 光標(biāo)移至句首。
·段) 光標(biāo)移至段落開頭。
{ 光標(biāo)移至段落結(jié)尾。
·行k 或 Ctrl+p 光標(biāo)上移一行。
j 或 Ctrl+n 光標(biāo)下移一行。
Enter 光標(biāo)下移一行。
nG 光標(biāo)移至第 n 行首。
n+ 光標(biāo)下移 n 行。
n- 光標(biāo)上移 n 行。
n$ 光標(biāo)移至第 n 行尾。
0 光標(biāo)移至當(dāng)前行首。
$ 光標(biāo)移至當(dāng)前行尾。
·屏幕
H 光標(biāo)移至屏幕頂行。
M 光標(biāo)移至屏幕中間行。
L 光標(biāo)移至屏幕最后行。
Ctrl+u 向文件首翻半屏。
Ctrl+d 向文件尾翻半屏。
Ctrl+f 向文件尾翻一屏。
Ctrl+b 向文件首翻一屏。
nz 將第 n 行滾至屏幕頂部。不指定 n 時將當(dāng)前行滾至屏幕頂。
4}插入
# 在文件中插入行號(不是顯示行號,是插入!)
:g/^/exec “s/^/”.strpart(line(“.”).” “, 0, 4)
·光標(biāo)
i 在光標(biāo)前插入。
a 在光標(biāo)后插入。
·行
I 在當(dāng)前行首插入。
A 在當(dāng)前行尾插入。
o 在當(dāng)前行之下一新行插入。
O 在當(dāng)前行之上新開一行插入。
5)替換
r 替換當(dāng)前字符。
R 替換當(dāng)前字符及其后的字符,直至按 ESC 鍵。
s 從當(dāng)前光標(biāo)位置處開始,以輸入的文本代替指定數(shù)目的字符。
S 刪除指定數(shù)目的行,并以所輸入的文本代替。
6)修改
ncw 或 nCW 修改指定數(shù)目的字符。
nCC 修改指定數(shù)目的行。
:r filename 將文件 filename 插入在當(dāng)前行之下
7)查找替換
/ 把狹義單詞 寫到 搜索命令行
/ 把廣義單詞 寫到 搜索命令行
:g/str/s/str1/str2/g
之一個g表示對每一個包括s1的行都進(jìn)行替換,
第二個g表示對每一行的所有進(jìn)行替換
包括str的行所有的str1都用str2替換
:%s/f $/for$/g 將每一行尾部的“f ”(f鍵和空格鍵)替換為for
:%s/^/mv /g 在每一行的頭部添加“mv ”(mv鍵和空格鍵)
:s/fred/a/g 替換fred成register a中的內(nèi)容,呵呵
:g/顯示含或的行
# 替換一個visual區(qū)域
# 選擇一個區(qū)域,然后輸入 :s/Emacs/Vim/ 等等,vim會自動進(jìn)入:模式
:’s/Emacs/Vim/g 前面的’是vim自動添加的
# 在多個文檔中搜索
:bufdo /searchstr
:argdo /searchstr
復(fù)制與剪切
xp 交換前后兩個字符的位置
ddp 上下兩行的位置交換
:g/fred/t$ 拷貝行,從fred到文件末尾(EOF)
9)窗口操作
:vne
:sp
:S
:new
:^w + ^r 交換兩個窗口的位置
^w = 窗口等寬
:res -n 窗口高度減小n
:res +n 窗口高度增大n
:vert res -n
:vert res +n
10)DOS格式文本轉(zhuǎn)成Unix格式文本
:1,$s/^M//g
11)書簽
在閱讀和編寫大的程序文件時,利用標(biāo)記(書簽)功能定位是十分有幫助的。
將光標(biāo)移到想做標(biāo)記的位置。假如做一個名為“debug1”的標(biāo)記,那么用戶可在命令模式下輸入做標(biāo)記的命令“mdebug1”,然后敲入回車鍵,一個名為“debug1”的標(biāo)記就做好了。
接下來用戶可以隨意將光標(biāo)移到其它的位置,當(dāng)在命令模式下輸入“`debug1”后,就能快速回到“debug1”的標(biāo)記所在行的行首。
馨竹:13
12)刪除操作
:%s/r//g 刪除DOS方式的回車^M
:%s= *$== 刪除行尾空白
:%s/^(.*)n1/1$/ 刪除重復(fù)行
:%s/^.pdf/new.pdf/ 只是刪除之一個pdf
:%s/// 又是刪除多行注釋(咦?為什么要說「又」呢?)
:g/^s*$/d 刪除所有空行
:g!/^dd/d 刪除不含字符串’dd’的行
:v/^dd/d 同上 (譯釋:v == g!,就是不匹配?。?/p>
:g/str1/,/str2/d 刪除所有之一個含str1到之一個含str2之間的行
:v/./.,/./-1join 壓縮空行
:g/^$/,/./-j 壓縮空行
:s/p1/p2/g:將當(dāng)前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:將文件中所有p1均用p2替換
ndw 或 ndW 刪除光標(biāo)處開始及其后的 n-1 個字符。
d0 刪至行首。
d$ 刪至行尾。
ndd 刪除當(dāng)前行及其后 n-1 行。
x 或 X 刪除一個字符。
Ctrl+u 刪除輸入方式下所輸入的文本。
^R 恢復(fù)u的操作
J 把下一行合并到當(dāng)前行尾
V 選擇一行
^V 按下^V后即可進(jìn)行矩形的選擇了
aw 選擇單詞
iw 內(nèi)部單詞(無空格)
as 選擇句子
is 選擇句子(無空格)
ap 選擇段落
ip 選擇段落(無空格)
D 刪除到行尾
x,y 刪除與復(fù)制包含高亮區(qū)
dl 刪除當(dāng)前字符(與x命令功能相同)
d0 刪除到某一行的開始位置
d^ 刪除到某一行的之一個字符位置(不包括空格或TAB字符)
dw 刪除到某個單詞的結(jié)尾位置
d3w 刪除到第三個單詞的結(jié)尾位置
db 刪除到某個單詞的開始位置
dW 刪除到某個以空格作為分隔符的單詞的結(jié)尾位置
dB 刪除到某個以空格作為分隔符的單詞的開始位置
d7B 刪除到前面7個以空格作為分隔符的單詞的開始位置
d) 刪除到某個語句的結(jié)尾位置
d4) 刪除到第四個語句的結(jié)尾位置
d( 刪除到某個語句的開始位置
d) 刪除到某個段落的結(jié)尾位置
d{ 刪除到某個段落的開始位置
d7{ 刪除到當(dāng)前段落起始位置之前的第7個段落位置
dd 刪除當(dāng)前行
d/text 刪除從文本中出現(xiàn)“text”中所指定字樣的位置,
一直向前直到下一個該字樣所出現(xiàn)的位置(但不包括該字樣)之間的內(nèi)容
dfc 刪除從文本中出現(xiàn)字符“c”的位置,一直向前直到下一個該字符所出現(xiàn)的位置(包括該字符)之間的內(nèi)容
dtc 刪除當(dāng)前行直到下一個字符“c”所出現(xiàn)位置之間的內(nèi)容
D 刪除到某一行的結(jié)尾
d$ 刪除到某一行的結(jié)尾
5dd 刪除從當(dāng)前行所開始的5行內(nèi)容
dL 刪除直到屏幕上最后一行的內(nèi)容
dH 刪除直到屏幕上之一行的內(nèi)容
dG 刪除直到工作緩存區(qū)結(jié)尾的內(nèi)容
d1G 刪除直到工作緩存區(qū)開始的內(nèi)容
修改命令操作
r 更改當(dāng)前字符
cw 修改到某個單詞的結(jié)尾位置
c3w 修改到第三個單詞的結(jié)尾位置
cb 修改到某個單詞的開始位置
cW 修改到某個以空格作為分隔符的單詞的結(jié)尾位置
cB 修改到某個以空格作為分隔符的單詞的開始位置
c7B 修改到前面7個以空格作為分隔符的單詞的開始位置
c0 修改到某行的結(jié)尾位置
c} 修改到某個語句的結(jié)尾位置
c4} 修改到第四個語句的結(jié)尾位置
c( 修改到某個語句的開始位置
c) 修改到某個段落的結(jié)尾位置
c{ 修改到某個段落的開始位置
c7{ 修改到當(dāng)前段落起始位置之前的第7個段落位置
ctc 修改當(dāng)前行直到下一個字符c所出現(xiàn)位置之間的內(nèi)容
C 修改到某一行的結(jié)尾
cc 修改當(dāng)前行
5cc 修改從當(dāng)前行所開始的5行內(nèi)容
. 重復(fù)上一次修改!
13}Set 選項設(shè)置
set all 列出所有選項設(shè)置情況。
set term 設(shè)置終端類型。
set ignorecase 在搜索中忽略大小寫。
set list 顯示制表位(^I)和行尾標(biāo)志($)。
set number 顯示行號。
set showmode 示用戶處在什么模式下
set report 顯示由面向行的命令修改國的行數(shù)目。
set terse 顯示簡短的警告信息。
set warn 在轉(zhuǎn)到別的文件時,若沒有保存當(dāng)前文件則顯示 No write 信息。
set autowrite 在“:n”和“:!”命令之前都自動保存文件
set nomagic 允許在搜索模式中,使用前面不帶\的特殊字符。
set nowrapscan 禁止 vi 在搜索到達(dá)文件兩端時,又從另一端開始。
set mesg 允許 vi 顯示其他用戶用 write 寫到自己終端上的信息。
autoindent (ai) noai 使新行自動縮進(jìn),和上(下)行的位置對齊
autoprint (ap) ap 每條命令之后都顯示出修改之處
autowrite (aw) noaw 在:n,:!命令之前都自動保存文件
beautify (bf) nobf 在輸入的時候忽略所有的控制字符(除了制表鍵(tab),換行(newline),進(jìn)紙(formfeed))
directory= (dir=) /tmp 存放緩沖區(qū)的目錄名
edcompatible noedcompatible 在替換的時候使用類ed的用法
errorbells (eb) errorbells 出錯的時候響鈴
exrc (ex) noexrc 允許在主目錄(home)外面之外放.exrc文件
hardtabs= (ht=) 8 設(shè)置硬制表的邊界
ignore case (ic) noic 正規(guī)式里忽略大小寫
lisp nolisp 打開lisp模式
list nolist 顯示所有的制表鍵和行的結(jié)尾
magic agic 可以使用更多的正規(guī)表達(dá)式
mesg mesg 允許向終端發(fā)送消息
number (nu) nonumber 顯示行號
open open 允許開放和可視化
optimize (opt) optimize 優(yōu)化吞吐量,打印時不發(fā)回車
paragraphs= (para=) IPLPPPQPPLIbp 設(shè)置{ & }的分界符
當(dāng)前標(biāo)題:如何在Linux系統(tǒng)中選中全部內(nèi)容(linux選中全部)
分享鏈接:http://fisionsoft.com.cn/article/cooicoo.html


咨詢
建站咨詢
