[華為云在線課程][Linux基礎入門和幫助][第三章Linux常見命令及字符集和編碼][學習筆記]

      網友投稿 599 2025-03-31

      常見命令

      查看硬件信息

      查看CPU

      lscpu命令可以查看cpu信息

      [華為云在線課程][Linux基礎入門和幫助][第三章Linux常見命令及字符集和編碼][學習筆記]

      cat /proc/cpuinfo也可查看到

      查看內存大小

      free命令可以查看內存大小(但顯示結果會以KB格式,需要加上-h)

      cat /proc/meminfo也可查看到

      查看硬盤和分區情況

      lsblk命令可以查看硬盤和分區信息

      cat /proc/partitions也可查看到

      查看系統版本信息

      查看內核版本

      [root@localhost ~]# uname -r 3.10.0-1160.el7.x86_64

      查看操作系統發行版本

      [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) [root@localhost ~]# cat /etc/os-release NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7"

      日期和時間

      Linux的兩種時鐘

      系統時鐘:由Linux內核通過CPU的工作頻率進行的

      硬件時鐘:主板

      相關命令

      date 顯示和設置系統時間

      例子:

      [root@localhost ~]# date +%s 1647268077 [root@localhost ~]# date -d @`date +%s` Mon Mar 14 22:28:15 CST 2022 [root@localhost ~]# date -d @1647268077 Mon Mar 14 22:27:57 CST 2022 [root@localhost ~]# date -d @1647268077 +%F_%T 2022-03-14_22:27:57

      clock, hwclock:顯示硬件時鐘

      -s, --hctosys #以硬件時鐘為準,校正系統時鐘 -w, --systohc #以系統時鐘為準,校正硬件時鐘

      時區:

      /etc/localtime

      例子:

      [root@localhost ~]# timedatectl list-timezones [root@localhost ~]# timedatectl set-timezone Asia/Shanghai [root@localhost ~]# timedatectl status Local time: Mon 2022-03-14 22:44:59 CST Universal time: Mon 2022-03-14 14:44:59 UTC RTC time: Mon 2022-03-14 14:44:55 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: n/a [root@localhost ~]# ll /etc/localtime lrwxrwxrwx. 1 root root 35 Mar 4 20:54 /etc/localtime -> ../usr/share/zoneinfo/Asia/Shanghai

      顯示日歷:

      cal -y

      例子:

      [root@localhost ~]# cal 3 2022 March 2022 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

      關機和重啟

      關機:

      halt

      poweroff

      重啟:

      reboot

      -f:強制,不調用shutdown

      -p:切斷電源

      關機或重啟:shutdown

      shutdown [OPTION]... [TIME] [MESSAGE]

      -r:reboot

      -h:halt

      -c:cancel

      TIME:無指定,默認相當于+1(CentOS7)

      now:立刻,相當于+0

      +#:相對時間表示法,幾分鐘之后;例如:+3

      hh:mm:絕對時間表示,指明具體時間

      用戶登錄信息查看命令

      whoami:顯示當前登錄有效用戶

      who:系統當前所有的登錄會話

      w:系統當前所有的登錄會話及所做的操作

      文本編輯

      nano:工具可以實現文本的編輯,上手容易,適合初學者

      gedit:工具是圖形工具

      會話管理

      命令行的典型使用方式是,打開一個終端窗口(terminal window,以下簡稱"窗口"),在里面輸入命令。用戶與計算機的這種臨時的交互,稱為一次"會話"(session)

      會話的一個重要特點是,窗口與其中啟動的進程是連在一起的。打開窗口,會話開始;關閉窗口,會話結束,會話內部的進程也會隨之終止,不管有沒有運行完成

      一個典型的例子就是,SSH登錄遠程計算機,打開一個進程窗口執行命令。這時,網絡突然斷線,再次登錄的時候,是找不回上一次執行的命令的。因為上一次SSH會話已經終止了,里面的進程也隨之消失了。為了解決這個問題,會話與窗口可以"解綁";窗口關閉時,會話并不終止,而是繼續運行,等到以后需要的時候,再讓會話"綁定"其他窗口

      終端復用器軟件就是會話與窗口的"解綁"工具,將它們徹底分離。

      (1),它允許在單個窗口中,同時訪問多個會話,這對于同時運行多個命令行程序很有用。

      (2)它可以讓新窗口"接入"已經存在的會話。

      (3)它允許每個會話有多個連接窗口,因此可以多人實時共享會話。

      (4)它還支持窗口任意的垂直和水平拆分。

      類似的終端復用器還有Screen,Tmux

      screen

      利用screen可以實現會話管理,如:新建會話,共享會話等

      注意:CentOS7來自于base源,CentOS8來自于epel源

      例子:安裝screen

      #CentOS7安裝screen #yum -y install screen #CentOS8安裝screen #dnf -y install epel-release #dnf -y install screen

      screen命令常見用法:

      創建新screen會話

      screen -S [SESSION]

      加入screen會話

      screen -x [SESSION]

      退出并關閉screen會話

      exit

      剝離當前screen會話

      Ctrl+a,d

      顯示所有已經打開的screen會話

      screen -ls

      恢復某screen會話

      screen -r [SESSION]

      tmux

      Tmux是一個終端復用器(terminal multiplexer),類似screen,但是更易用,也更強大

      Tmux就是會話與窗口的"解綁"工具,將它們徹底分離,功能如下:

      它允許在單個窗口中,同時訪問多個會話。這對于同時運行多個命令程序很有用。

      它允許讓新窗口"接入"已經存在的會話。

      它允許每個會話有多個連接窗口,因此可以多人實時共享會話。

      它還支持窗口任意的垂直和水平拆分。

      安裝

      yum install tmux

      啟動與退出

      [root@centos7 ~]#tmux [root@centos7 ~]#exit logout

      Tmux窗口有大量的快捷鍵,所有快捷鍵都要通過前綴鍵喚起。默認的前綴鍵是Ctrl+b,即先按下Ctrl+b,快捷鍵才會生效。幫助命令的快捷鍵是Ctrl+b ?然后,按下q鍵,就可以退出幫助。

      新建會話

      第一個啟動的Tmux窗口,編號是0,第二個編號是1,以此類推。這些窗口對應的會話,就是0號會話,1號會話。使用編號區分會話,不太直觀,更好的方法是為會話起名。下面命令新建一個指定名稱的會話。

      tmux new -S

      tmux ls或者Ctrl+b,s 可以查看當前所有的tmux會話

      tmux ls tmux list-session

      分離會話

      在tmux窗口中,按下Ctrl+b d或者輸入tmux detach命令,就會將當前會話與窗口分離。

      tmux detach

      接入會話

      tmux attach命令用于重新接入某個已存在的會話

      tmux attach -t

      終止會話

      tmux kill-session命令用于終止某個會話

      tmux kill-session -t

      切換會話

      tmux switch命令用于切換會話

      tmux switch -t

      可以將窗口分成多個窗格(pane),每個窗格運行不同的命令

      上下分窗格

      tmux split-window ctrl+b,"

      左右分窗格

      tmux split-window -h ctrl+b,%

      列出所有快捷鍵,及其對應的tmux命令

      tmux list-keys

      列出所有tmux命令及其參數

      tmux list-commands

      輸出信息echo

      echo基本用法

      echo命令可以將后面跟的字符進行輸出

      功能:顯示字符,echo會將輸入的字符串送往標準輸出,輸出的字符串間以空白字符隔開,并在最后加上換行號

      語法:

      echo [-neE][字符串]

      選項:

      -E (默認)不支持\解釋功能

      -n 不自動換行

      -e 啟用\字符的解釋功能

      顯示變量

      echo "$VAR_NAME" #用變量值替換,弱引用 echo '$VAR_NAME' #變量不會替換,強引用

      啟用命令選項-e,若字符串中出現以下字符,則特別加以處理,而不會將它當作一般文字輸出

      \a 發出警告聲

      \b 退格鍵

      \c 最后不加上換行符號

      \e escape,相當于\033

      \n 換行且光標移至行首

      \r 回車,即光標移至行首,但不換行

      \t 插入tab

      \\ 插入\字符

      \0nnn 插入nnn(八進制)所代表的ASCII字符

      \xHH 插入HH(十六進制)所代表的ASCII數字(man 7 ascii)

      echo高級用法

      在終端中,ANSI定義了用于屏幕顯示的Escape屏幕控制碼

      具有顏色的字符,其格式如下:

      "\033[字符背景顏色;字體顏色m字符串\033[0m"

      \033[30m … \033[37m 設置前景色

      \033[40m … \033[47m 設置背景色

      #字符背景顏色范圍:40-47 40:黑 41:紅 42:綠 43:黃 44:藍 45:紫 46:深綠 47:白

      加顏色只是以下控制碼中的一種,下面是常見的一些ANSI控制碼:

      \033[0m 關閉所有屬性 \033[1m 設置高亮度 \033[4m 下劃線 \033[5m 閃爍 \033[7m 反顯 \033[8m 消隱 \033[nA 光標上移n行 \033[nB 光標下移n行 \033[nC 光標右移n列 \033[nD 光標左移n列 \033[x;yH 設置光標位置x行y列 \033[2J 清屏 \033[K 清除從光標到行尾的內容 \033[s 保存光標位置 \033[u 恢復光標位置 \033[?25l 隱藏光標 \033[?25h 顯示光標 \033[2J\033[0;0H 清屏且將光標置頂

      字符集和編碼

      許多場合下,字符集與編碼這兩個概念常被混為一談,但兩者是有差別的。字符集與字符集編碼是兩個不同的概念。

      charset是character set的簡寫,即字符集,即二進制和字符的對應關系,不關注最終的存儲形式

      encoding是charset encoding的簡寫,即字符集編碼,簡稱編碼,實現如何將字符轉化為實際的二進制進行存儲或相反,編碼決定了空間的使用的大小

      ASCII碼

      計算機內部,所有信息最終都是一個二進制值。上個世紀60年代,美國制定了一套字符編碼,對英語字符與二進制之間的關系,做了統一規定,即ASCII(American Standard Code for Information Interchange)碼

      ASCII碼一定規定了128個字符的編碼,占用了一個字節的后面7位,最前面的一位統一規定為0

      例子:查看ASCII表

      dnf -y install man-pages man ascii

      Unicode

      由于計算機是美國人發明的,因此,最早只有127個字母被編碼到計算機里,即ASCII編碼,但是要處理中文顯然一個字節是不夠的,至少需要兩個字節,而且還不能和ASCII編碼沖突,所以,中國制定了GB2312編碼,用來把中文編進去。

      全世界有上百種語言,日本把日文編到Shift_JIS里,韓國把韓文編到Euc-kr里,各國有各國的標準,就會不可避免地出現沖突,結果就是,在多語言混合的文本中,顯示出來會有亂碼。

      為了表示世界上所有語言中的所有字符。每一個符號都給予一個獨一無二的編碼數字,Unicode是一個很大的集合,現在的規模可以容納100多萬個符號。Unicode僅僅只是一個字符集,規定了每個字符對應的二進制代碼,至于這個二進制代碼如何存儲則沒有規定

      Unicode編碼方案:

      UTF-8:變長,1到4個字節

      UTF-16:變長,2或4個字節

      UTF-32:固定長度,4個字節

      UTF-8是目前互聯網上使用廣泛的一種Unicode編碼方式,可變長存儲。使用1-4個字節表示一個字符,根據字符的不同變換長度。

      編碼規則如下:

      對于單個字節的字符,第一位設為0,后面的7位對應這個字符的Unicode碼。因此,對于英文中的0-127號字符,與ASCII碼完全相同。這意味著ASCII碼的文檔可用UTF-8編碼打開。

      對于需要使用N個字節來表示的字符(N>1),第一個字節的前N位都設為1,第N+1位設為0,剩余的N-1個字節的前兩位都設為10,剩下的二進制位則使用這個字符的Unicode碼來填充

      編碼轉換和查詢參考鏈接:

      https://home.unicode.org/

      https://unicode.yunser.com/unicode

      https://www.chi2ko.com/tool/CJK.htm

      https://www.bejson.com/convert/unicode_chinese/

      https://javawind.net/tools/native2ascii.jsp?action=transform

      http://tool.oschina.net/encode

      http://web.chacuo.net/charsetescape

      Unicode和UTF-8

      例子:Unicode轉換為UTF-8

      "漢"的Unicode碼0x6C49(110 110001 001001),需要三個字節存儲,格式為:1110xxxx 10xxxxxx 10xxxxxx,從后向前依次填充對應格式中的x,多出的x用0補,得出UTF-8編碼為:11100110 10110001 10001001 "馬"的Unicode碼0x9A6C(1001 101001 101100),需要三個字節存儲,格式為:1110xxxx 10xxxxxx 10xxxxxx,從后向前依次填充對應格式中的x,多出的x用0補,得出UTF-8編碼為11101001 10101001 10101100

      例子:修改LANG變量實現中文語言提示

      [root@localhost ~]# echo $LANG en_US.UTF-8 [root@localhost ~]# LANG=zh_CN.UTF-8 [root@localhost ~]# echo $LANG zh_CN.UTF-8 [root@localhost ~]# LANG=en_US.UTF-8 [root@localhost ~]# echo $LANG en_US.UTF-8

      Linux

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:在線甘特圖軟件
      下一篇:Word2003制作憑證封面套打模板具體的操作步驟(憑證封面如何填寫規范)
      相關文章
      亚洲视频一区二区三区| 亚洲精品无码久久久久去q | 亚洲国产精品无码久久SM| 亚洲一级片内射网站在线观看| 久久亚洲精品无码网站| 亚洲欧美乱色情图片| 亚洲精品av无码喷奶水糖心| 亚洲人成色777777精品| 亚洲精品中文字幕无码A片老| 亚洲色无码国产精品网站可下载 | 精品亚洲成α人无码成α在线观看 | 国产亚洲AV无码AV男人的天堂| 亚洲国产一二三精品无码| 国产亚洲无线码一区二区| 国产成人A人亚洲精品无码| 久久精品国产精品亚洲蜜月| 亚洲电影一区二区三区| 亚洲黑人嫩小videos| 亚洲制服丝袜一区二区三区| 自拍日韩亚洲一区在线| 国产成人精品亚洲日本在线| 亚洲色中文字幕在线播放| 亚洲AV永久无码天堂影院| 亚洲福利视频一区二区| 中文字幕亚洲专区| 久久久久久a亚洲欧洲aⅴ| 亚洲va在线va天堂va不卡下载| 亚洲美女视频一区二区三区| 亚洲免费视频播放| 亚洲精品美女久久久久久久| 国产精品亚洲一区二区三区久久| 亚洲国产精品尤物YW在线观看| 国产亚洲成归v人片在线观看| 精品亚洲综合在线第一区| 久久狠狠高潮亚洲精品| 亚洲av无码一区二区三区天堂古代| 亚洲一线产品二线产品| 亚洲av麻豆aⅴ无码电影| 亚洲欧洲国产精品香蕉网| 亚洲综合久久综合激情久久| 亚洲最大的黄色网|