N22-?Linux系統的基礎命令

                                 Linux系統的基礎命令


命令的語法通用格式:# COMMAND OPTIONS  ARGUMENTS

COMMAND: 發起命令,請求內核將某個二進制程序運行為一個進程

命令本身是一個可執行的程序文件;二進制格式的文件,有可能會調用共享庫文件

多數程序文件都存放在:/bin, /sbin, /usr/sbin ,/usr/bin, /usr/local/bin, /usr/local/sbin

普通命令存放位置:/bin,/usr/sbin,/usr/local/bi

管理命令存放位置:/sbin,/usr/sbin,/usr/local/sbin

共享庫: /lib,/lib64,/usr/lib,/usr/li64,/usr/local/lib,/usr/local/lib64

32位的庫: /lib,/usr/lib,/usr/local/lib

64位的庫:/lib64,/usr/li64,/usr/local/lib64

注意:并非所有的命令都有一個早某目錄與之對應的可執行程序文件

命令必須遵循特定格式規范:exe,msi,ELF(Linux)

# file /bin/ls 

命令分為兩類:

   由shell程序的自帶的命令:內置命令(builtin)

   獨立的可執行程序文件,文件名即命令名:外部命令

    shell程序是獨特的程序,負責解析用戶提供的命令;

環境變量:

PATH:從哪些路徑匯中查找用戶鍵入的命令字符串所對應的命令字符串

[root@localhost /]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

查找次序:自作向右 

如果是shell內部命令,則不會有這些命令存在的位置,是shell程序自帶的

查看命令類型:type+命令

 

OPTIONS:

   指定命令的運行特性;

   選項有兩種表現形式:

        短選項:-C  eg. -l , -d 

            注意:有些命令的選項沒有-;

            如果同一命令使用多個短選項,多數可合并:

                [root@localhost /]# ls -l -d /var 

                        drwxr-xr-x. 19 root root 4096 8月  10 15:18 /var

                [root@localhost /]# ls -ld /var

                        drwxr-xr-x. 19 root root 4096 8月  10 15:18 /var

       長選項:–word, eg.–help,–human-readable

            注意:長選項可以帶參數;

            注意:有些選項可以帶參數,此稱為選項參數;

ARGUMENTS

  命令的作用對象;命令對什么生效 

  注意:不同的命令參數;有些命令可以同時帶多個參數,多個之間以空白字符分割

基礎命令介紹

which命令:

which – shows the full path of (shell) commands.  顯示命令的完整路徑

which [options] [–] programname […]  

–skip-alias:不顯示別名 

whereis命令:

locate the binary, source, and manual page files for a command

定位二進制、來源、幫助手冊文件的命令

-b:只顯示二進制格式

-m:只顯示幫助手冊

who命令:

查看登錄當前系統的相關信息

-b: 顯示上一次系統是什么時候啟動的

-r: 顯示運行級別

    

w命令:

增強版的who命令,用于顯示誰登陸了系統以及在做什么

bash的基礎特性:

命令歷史:shell進程會對其會話中保存此前用戶提交執行過的命令

# history

定制history的功能:可通過環境變量實現:

HISTSIZE:shell進程可保留的命令歷史的條數

eg.[root@bogon ~]# echo $HISTSIZE

         1000

HISTFILE:持久保留命令歷史的文件

 每個用戶下都有一個隱藏文件.bash_history 

 文件中不會有用戶剛剛操作過的命令,因為這個文件是用戶登出后內存寫入這個文件的

HISTFILESIZE:命令歷史的文件的大小

eg  [root@bogon ~]# echo $HISTFILESIZE

         1000

注意:比如命令歷史文件中有800條記錄,當系統開機時自動加載到內存中,開機后用戶操作300條命令

      所以用history命令操作后看到的歷史命令的條數可以使1100條

      比如命令歷史文件中有300條記錄,本次操作800條命令,用戶登出后本次操作的記錄保存到歷史文               件中那么歷史文件的大小還是1000條,最前面的100條記錄溢出

  

-c:清空命令歷史(刪除內存中的記錄)

-d+偏移量:刪除指定位置的歷史記錄

-w:將當前歷史寫入到歷史文件中并追加到歷史列表中(內存–>文件)

-r:讀取歷史文件并將內容追加到歷史列表中(文件–>內存)

history + #:顯示最近的#條命令

調用命令歷史列表中的命令:

!#:再一次執行歷史列表中的第#條命令

?。。涸僖淮螆绦猩弦粭l命令

!STRING:自一次執行命令歷史列表中最近一個以STRING開頭的命令    

注意:命令的重復執行有時候需要依賴于冪等性

調用上一條命令的最后一個參數:

Esc,. 

!$ 

eg:[root@bogon ~]# file !$

file /etc/sysconfig/network-scripts/ifcfg-eno16777736

/etc/sysconfig/network-scripts/ifcfg-eno16777736: ASCII text

      控制命令歷史記錄的方式:

                環境變量:HISTCONTROL

                   [root@bogon ~]# echo $HISTCONTROL

ignoredups —-忽略連續且相同的命令歷史記錄

                其取值有三個:

                    ignoredups:忽略重復的命令

                    ignorespace: 忽略以空格開頭的的命令

                    ignorebouth:以上兩者同時生效               

       修改變量的值:

     NAME='value'—> 僅對當前shell有效

目錄管理類的命令:

 mkdir:創建目錄

            mkdir [OPTION]… DIRECTORY…

            注意:路徑基名方為命令的作用對象;基名之前的路徑必須得存在

            -p: 自動按需創建父目錄

            -v:顯示詳細的創建過程

            -m + MODE:直接給定權限

rmdir: 刪除空目錄–>僅用于刪除空目錄

            -p:刪除某空目錄后,如果父目錄為空,則一并刪除之

    -v:顯示過程

tree命令:

  -L :指定要顯示的目錄層級

more命令:

more FILE

    特點:翻屏至文件尾部后自動退出

less命令:

less FIEL

head命令:

查看文件的前N行

head [options] FILE

 -n

-n number

tail命令:

 查看文件的后N行

tail [options] FILE

-n

-n number

-f:查看文件尾部內容結束后不退出,跟隨顯示新增的行。

 

stat命令:

顯示文件或文件系統的狀態

eg.[root@bogon ~]# stat /tmp/yum.log 

文件:"/tmp/yum.log"

大?。?         塊:0          IO 塊:4096   普通空文件

設備:fd00h/64768d Inode:134         硬鏈接:1

權限:(0600/-rw——-)  Uid:(    0/    root)   Gid:(    0/    root)

環境:system_u:object_r:initrc_tmp_t:s0

最近訪問:2016-08-10 14:41:23.814002701 +0800

最近更改:2016-08-10 14:41:23.814002701 +0800

最近改動:2016-08-10 14:41:23.814002701 +0800

創建時間:-

文件:都有兩類數據

元數據:metadata–>描述屬性的信息

數據:data      –>數據本身的信息

  

時間戳:

     最近訪問(access time):2016-08-13 16:25:44.156843879 +0800

     最近更改(modify time):2016-08-10 14:41:23.814002701 +0800

     最近改動(change time):2016-08-10 14:41:23.814002701 +0800

        

touch命令:

     修改文件的時間戳

     -c:指定的文件路徑不存在時不予創建

     -a:僅修改access time

     -m:僅修改modify time

     -t STAMP :修改指定的時間

[[CC]YY]MMDDhhmm[.ss]

cp命令:文件復制

    源文件:目標文件  

       單源復制:cp [OPTION]… [-T] SOURCE DEST

       多源復制:cp [OPTION]… SOURCE… DIRECTORY

       多源復制:cp [OPTION]… -t DIRECTORY SOURCE…

  

       單源復制:cp [OPTION]… [-T] SOURCE DEST

     如果 DEST不存在:

則先創建此文件,并復制源文件的數據流到 DEST中

     如果 DEST存在:

如果DEST是非目錄文件:則覆蓋目標文件

如果DEST是目錄文件:則先在DEST目錄下創建一個與源文件同名的文件,并復制其數據流

       多源復制:cp [OPTION]… SOURCE… DIRECTORY

                 cp [OPTION]… -t DIRECTORY SOURCE…

            如果DEST不存在:錯誤

            如果DEST存在:

                如果DEST是非目錄文件:錯誤

                如果DEST是目錄文件:分別復制每個文件至目標目錄中,并保持原名

        

        常用選項:

            -i: 交互式復制,覆蓋之前提醒用戶確認            

            -f:強制覆蓋目標文件

            -R/-r:遞歸復制目錄:復制目錄及目錄中的內容

            -d:復制符號鏈接文件本身,而不復制它所連接的源文件

-a: -dR  –preserve=all ,archive,用于實現歸檔(做備份);

–preserv=

        mode:權限

pwnership:屬主和屬組

tomestamps;時間戳

context:安全標簽

xattr:擴展屬性

links:符號鏈接

   all:上述所有屬性

       

mv命令:

           mv [OPTION]… [-T] SOURCE DEST

  mv [OPTION]… SOURCE… DIRECTORY

  mv [OPTION]… -t DIRECTORY SOURCE…

  

  常用選項:

     -i: 交互式

      -f:強制覆蓋目標文件

    

rm命令:刪除文件        

 常用選項:

   -i:交互式

   -f:強制執行

   -r:遞歸刪除目錄

     注意:所有不用的文件建議不要直接刪除,而是移動至某個專用目錄(回收站)

    

    變量:

        命名的內存空間

             變量類型:

  浮點型

  數值型

        精確數值

近似數值

    變量類型決定了存儲格式、數據范圍、參與運算等

原創文章,作者:N22-長春-石頭,如若轉載,請注明出處:http://www.www58058.com/35347

(0)
N22-長春-石頭N22-長春-石頭
上一篇 2016-08-15 12:10
下一篇 2016-08-15 12:10

相關推薦

  • CentOS 6系統啟動流程

    Linux系統的組成 內核+根文件系統 內核功能:     進程管理、內存管理、文件系統管理、網絡管理、安全功能、驅動程序 運行中的系統環境可分為兩層:內核空間、用戶空間     用戶空間:應用程序(進程或線程)     內核空間:內核代碼…

    Linux干貨 2016-09-15
  • 第8天:腳本基礎,btrf,raid,

    http://note.youdao.com/yws/public/redirect/share?id=61b38adef24ced4dc646a5ef8e68df18&type=false

    Linux干貨 2016-08-16
  • N26-第四周博客

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost skel]# cp -r /etc/skel /home/tuser1[root@localhost skel]# chmod -R go=— /home/tuser1 2、編輯/etc/…

    系統運維 2017-02-08
  • 網絡與進程管理相關命令使用

    網絡管理之netstat命令 netstat     -print network connections,routing tables,interface statistics,masquerade connections and multicast memberships     netstat…

    Linux干貨 2016-09-07
  • 2、基本命令介紹

    http://note.youdao.com/yws/public/redirect/share?id=dbbed5e1e3ecce8712076f11e70fc038&type=false

    Linux干貨 2016-08-08
  • N28-第三周作業

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。
    2、取出最后登錄到當前系統的用戶的相關信息。
    3、取出當前系統上被用戶當作其默認shell的最多的那個shell。
    4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中。
    5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。
    6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。
    7、顯示/var目錄下一級子目錄或文件的總個數。
    8、取出/etc/group文件中第三個字段數值最小的10個組的名字。
    9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中。
    10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
    (1)、創建組distro,其GID為2016;
    (2)、創建用戶mandriva, 其ID號為1005;基本組為distro;
    (3)、創建用戶mageia,其ID號為1100,家目錄為/home/linux;
    (4)、給用戶mageia添加密碼,密碼為mageedu;
    (5)、刪除mandriva,但保留其家目錄;
    (6)、創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin;
    (7)、修改slackware的默認shell為/bin/tcsh;
    (8)、為用戶slackware新增附加組admins;

    2017-12-17
欧美性久久久久