Linux基础笔记1
1、Linux 下有兩種用戶: 超級用戶( root)、 普通用戶。超級用戶命令提示符是“ #”, 普通用戶是“ $”
2、命令: su [用戶名] ?eg: ?su chen ? sudo是權限提升
3、 添加用戶 ? ?useradd 用戶名 ?eg: useradd ?-m chen -s ?/bin/bash,其中,-m 是在“/home”下建立chen目錄、-s /bin/bash 是指定腳本語言
4、在建立用戶后就是設置密碼:?命令:eg: passwd chen
5、刪除用戶 ?eg: userdel ?chen ? 附: .. 是上一級目錄 ?. 是當前目錄
6、查看文件可用vim ?cat ? ? ? echo hello>file(可以重定向到file)
7、查看文件或目錄 ??命令: ls [選項] [目錄或文件]
?? eg: ? ls –a /root/home ? 列出目錄所有子目錄與文件
? ? ? ? ?ls –l ??列出的詳細信息 ? ? ?第一個字符是文件類型
? ? 如:類型與權限 連接數 所有者 所屬組 大小 最近修改時間 文件名字。其中,文件類型有 ?- 普通文件 ?d 目錄 ?l 符號鏈接 ?b 塊設備
? ? ? ? c 字符設備文件 ??p 命名管道 ?s 是socket 文件
? ? ? ? 后9個字符是文件訪問權限,3 組, 每組 3位
? ? ? 第一組文件創建者權限,第二組同組用戶權限,第三組其他用戶權限
? ? ? ??r(4 讀)、w(2 寫)、x(1執行)、 _ (沒有設置權限)
? ? ? ? eg: ?rwxr_xr_x ?755 , rw_r_ _r_ _ ?644
8、改變工作目錄 ?eg: cd /home/chen/test
? ?cd .. 到父目錄 ? cd / ??到根目錄? ? ??cd ~ ?到用戶主目錄下~ 等同cd
? ? ? ? cd – ??到上一次目錄
9、顯示當前工作目錄 ? ?命令 : pwd
10、創建目錄 ??mkdir chen ? ?刪除目錄 ?rmdir chen
11、拷貝文件或目錄 ? ?命令 cp [選項] 源文件或目錄 目標文件或目錄
? ? 常用參數:-f 若有同名文件,直接覆蓋(不提示)?-i?同名文件(會提醒) ?-r 目錄下的子目錄和文件全部拷貝
12、移動文件或目錄 ? ?mv [選項] 源文件或目錄 目標文件或目錄 ? -i和-f 同上,是否提醒。 ?此外若是同一目錄。mv可用于改名
13、刪除文件或目錄 ? ?rm [選項] 文件或目錄 ? -f 刪除過程中不會給出提示。 ??-i 刪除過程中會給出交互式提示。 ?-r 如果刪除的是一個目錄,則將該目錄下的目錄及子目錄均刪除掉。?當然可以組合使用 ?eg:?rm –rf /chen/test
14、查看文件內容 ??cat [選項] [文件] ?參數: -b 對非空輸出行編號
-E 在每行結束處顯示$ ??-n 對輸出的所有行編號 ??-s 不輸出多行空行。標準輸入: 描述符:0 ? ?標準輸出為:1 ? ?錯誤輸出為:2
重定向符號: <重定向輸入 、 >重定向輸出 、 >>添加輸出 、 2>錯誤重定向 、 &>錯誤和信息重定向
cat 常常與重定向一起使用。 其中>表示創建, >>表示追加,<<
表示以什么結束 ? ?若cat命令行沒有參數,便只是純讀取到標準輸出
inux 中創建空文件的四種方式:
方式 1: echo > a.txt(有一個字節)
方式 2: touch b.txt
方式 3: cat > c.txt 按 ctrl+c 組合鍵退出; 或 Ctrl+d
方式 4: vi d.txt 進入之后: wq 退出。
15、顯示文件內容的前幾行 ??head –n 行數值 文件名 ? ?文件的后幾行 tail –n 行數值 文件名 ? ?eg: Head –n 10 main.cc
16、在bash里面的常用快捷鍵有:Ctrl+a 到行首 ?Ctrl+e到行尾 ?Ctrl+r查找上一次的輸入
17、管道與命令替換
管道: 是重定向的一種, 就像一個導管一樣, 將一個程序或命令的輸出作為另一個程序或命令的輸入。 eg:ls –l ?./etc | wc –w ?(注wc(Word Count)) ?wc [選項]文件... ??-c 統計字節數。 ?-l 統計行數。 ?-m 統計字符數。這個標志不能與 -c 標志一起使用。 ?-w 統計字數。一個字被定義為由空白、跳格或換行字符分隔的字符串。 -L 打印最長行的長度。
命令替換: 和重定向有點相似, 但區別在于命令替換是將一個命令的輸出作為另一個命令的參數。 ?格 式:command1 `command2`或 command1 $(command2) ? ?$(cmd)和`cmd`的作用是相同的,在執行一條命令時,會先將其中的 ``,或者是$() 中的語句當作命令執行一遍,再將結果加入到原命令中重新執行,例如:首先列出當前的所有信息, 并重定向到 aa 文件中:ls | cat > aa 或 ls > aa ??然后, 通過命令替換, 列出 aa 文件中所有的文件信息ls –l `cat aa` 或者ls –l $(cat aa)
18、文件或目錄的創建掩碼
umask 指文件( 0666) 或目錄( 0777) 創建時在全部權限中要去掉的一些權限, 普通用戶缺省時 umask 的值為 002, 超級用戶為 022。
002 表示創建目錄時所有者的權限不去掉, 所屬組權限不去掉, 其他組權限寫屬性去掉。
創建文件普通用戶缺省的權限664 ? ?超級用戶: 644
創建目錄普通用戶缺省的權限775 ? ?超級用戶: 755
可通過 umask 001修改掩碼值
19、改變目錄或文件的權限
chmod用戶用它控制文件或目錄的訪問權限。數字設定法
順序是( u)( g)( o) ??chmod [mode] ?eg:chmod ?755 ?mm.txt
u 表示“用戶( user) ” 、g 表示“同組( group) 用戶” 、o 表示“其他( others) 用戶” ?、a 表示“所有( all) 用戶”
eg:?chmod a+x a.out ?所有用戶都增加可執行權限 ?
? ? chmod ug+w, o-x text ? ?chmod ugo–x mm.txt
20、文件查找
命令: find 起始目錄 查找條件 操作
查找條件可由邏輯運算符not、and、or組合 ?
and:與,用-a表示 ??or:或,用-o表示 ??not:非,用!表示
eg: find /home/chen –name 1.p –a -type d
? ??find /home/user -name main.cc -o -name ?main.c
? ??find /home/user ! –name main.cc
( 1) 根據名稱和文件屬性查找
-name ’字串’ ?字串內可用通配符*、 ?、 []
find /home/luke -name main.c |xargs ls -l
21、搜索文件內容 grep
命令: grep [選項][查找模式][文件名 1, 文件名 2, …]
^ :以什么開頭 , 例如 ls –l | grep ^d 顯示當前目錄下的所
有子目錄的詳細信息 ? 這里是以d開頭,代表查找目錄
$ :以什么結尾 。 例如 ls –l | grep c$ 顯示當前目錄下
以 c 結尾的文件
eg:找空行 ?grep ^$ ? ?
find ! -name 1.c|grep rm -r ?除了1.c的文件全刪了。
find ?/user/include ?*h|xargs grep main
grep的通配: 一個字符 ? grep ?.ello ?file ? .表示記不清的一個字符
? ? ? ? ? ?? 多個字符 ?grep ?h.* ?file ? 以h開頭的
? ? ? ? ? ? ? 一個字符范圍 ?grep ?h[a-z] ?file ? [ ]表示范圍
?
例如: grep --nirs? findtext? ..??
?
22、?文檔管理
命令: tar [主選項+輔選項] 目標文檔 源文件或目錄
tar 命令, 可以把一大堆的文件和目錄全部打包成一個文件, 這對于備份文件或將幾個文件組合成為一個文件以便于網絡傳輸是非常有用的
常用參數:
c: 創建新的檔案文件。
r: 要把存檔的文件追加到檔案文件的末尾。
tar rf *.tar test
x: 從檔案文件中釋放文件。
f: 使用檔案文件或設備。
v: 在歸檔過程中顯示處理的文件。
z: 用 gzip 來壓縮/解壓縮文件, 后綴名為.gz, 加上該選項后可
以將檔案文件進行壓縮。
eg:, 把“ /home/user/” 下的所有后綴為.c 的歸檔到source.tar, 則使用 tar cvf ?source.tar /home/user/*.c
若歸檔時還要壓縮, 則用tar?zcvf source.tar.gz ?/home/user/*.c
若果將壓縮文件釋放, 則使用Tar xzvf source.tar.gz
排除某個文件或文件夾exclude.list 打包:?tar -cvf test_conf_008.tar -X exclude.list? .
23、 文件壓縮解壓
命令: gzip [選項]壓縮或解壓縮的文件名
d: 將壓縮文件進行解壓。
-v: 在壓縮或解壓過程中顯示解壓或壓縮的文件
eg: Gzip –dv main.c.gz
24、scp 遠程 copy 文件命令
eg:scp test -r chen@ip:path
?
scp file3 king@192.168.4.52:~/ 從本機 copy 到其他機器
scp king@192.168.4.52:~/file3 . 從其他機器 copy 到本機
可用ssh登錄
25、ELF(Executable and Linking Format)是一個定義了目標文件內部信息如何組成和組織的文件格式。內核會根據這些信息加載可執行文件,內核根據這些信息可以知道從文件哪里獲取代碼,從哪里獲取初始化數據,在哪里應該加載共享庫,等信息。
readelf -hS nodeos | less? ? ? ? ? ? ? ? ? // 例如: nodeos? 表示二進制程序
更多操作,參見:?
https://linuxtools-rst.readthedocs.io/zh_CN/latest/base/index.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Linux基础笔记1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 8 Map新增方法
- 下一篇: Truffle 、Geth、TestRP