Linux中基本命令

Linux中基本命令

1、命令提示符介紹

一、命令權限

[root@localhost ~]#		#/root
[xinghan@localhost ~]$		#/home/xinghan

如上:[用戶名@主機名 當前目錄] #超級管理員權限 $普通權限shell

二、命令格式

命令 選項 參數 (三者之間要有空格,區分大小寫)bash

command [-options] [args]

[args]:參數(多個參數之間用空格分隔)網絡

命令格式驗證:app

[root@localhost ~]# ls -a -l install.log
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
[root@localhost ~]# ls -al install.log
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
[root@localhost ~]# ls -al install.log install.log.syslog 
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
-rw-r--r--. 1 root root  9154 Oct  4  2015 install.log.syslog
[root@localhost ~]# ls -al install*
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
-rw-r--r--. 1 root root  9154 Oct  4  2015 install.log.syslog
[root@localhost ~]# ls -al *.log
-rw-r--r--. 1 root root 41364 Feb  8  2017 install.log
[root@localhost ~]# ls -al *.log*
-rw-r--r--. 1 root root 41364 Feb  8  2017 install.log
-rw-r--r--. 1 root root  9154 Feb  8  2017 install.log.syslog

三、獲取命令幫助

一、whatis 命令(若是不成功,則執行makewhatis)測試

二、使用help查看內建命令的幫助(enable查看內建命令)ui

三、man 命令:enter按行翻,空格按頁翻;HOME/END鍵能夠快速到首頁/尾頁(SecureCRT中無效);查找按 /要查找的內容,查找 下一個/上一個:按n/N;退出按q。spa

四、info 命令.net

五、命令--help命令行

查看內建命令:enablecode

示例:

[root@localhost ~]# whatis ls
ls                   (1)  - list directory contents
ls                   (1p)  - list directory contents
[root@localhost ~]# whatis date
date                 (1)  - print or set the system date and time
date                 (1p)  - write the date and time
[root@localhost ~]# help cd
cd: cd [-L|-P] [dir]
	Change the shell working directory.
[root@localhost ~]# help ls
-bash: help: no help topics match `ls'.  Try `help help' or `man -k ls' or `info ls'.

2、經常使用命令

一、目錄文件相關操做

1.新增

建立目錄:mkdir。

命令格式:mkdir 目錄名 [目錄1]

參數:-p:同時建立多層目錄。

示例:

[root@localhost ~]# mkdir /home/demo/abc
mkdir: cannot create directory `/home/demo/abc': No such file or directory
[root@localhost ~]# mkdir /home/demo
[root@localhost ~]# cd /home/demo/
[root@localhost demo]# mkdir abc xyz
[root@localhost demo]# ls
abc  xyz
[root@localhost ~]# mkdir  -p /home/a/b/c      #一次性將 a/b/c所有建立出來

2.刪除

刪除目錄或者文件:rm。

命令格式:rm -rf  目標

參數:-r遞歸刪除、-f強制刪除。

刪除空目錄:rmdir。

rmdir  目錄

示例:

[root@localhost home]# ls
aaa  demo  ds  xinghan  zs
[root@localhost home]# rm aaa
rm: cannot remove `aaa': Is a directory
[root@localhost home]# rm -r aaa         刪除目錄須要帶  -r
rm: descend into directory `aaa‘?  不帶-f會提示是否刪除  輸入y回車才刪除,不輸入y不刪
[root@localhost home]# ls
aaa  demo  ds  xinghan  zs
[root@localhost home]# rm -rf aaa    -f表示強制刪除
[root@localhost home]# ls
demo  ds  xinghan  zs

3.修改

touch:建立空文件或者修改文件的時間戳。

命令格式:touch  文件名稱

文件已存在會更改文件的時間戳,文件不存在會建立文件。

示例:

[root@localhost home]# cd /home/demo/
[root@localhost demo]# ls
abc  xyz
[root@localhost demo]# touch hello
[root@localhost demo]# ls
abc  hello  xyz
[root@localhost demo]# cd abc
[root@localhost abc]# ll install.log
-rw-r--r--. 1 root root 41364 Jan  1 23:45 install.log
[root@localhost abc]# date
Sun Jan  1 23:59:55 PST 2017
[root@localhost abc]# touch install.log
[root@localhost abc]# ll install.log
-rw-r--r--. 1 root root 41364 Jan  2 00:00 install.log

4.更名、移動

mv:用於移動一個目錄,Linux中沒有專門更名的命令,mv兼職更名。

命令格式:mv 源  目標

mv oldName newName

示例:

[root@localhost demo]# cd /home/demo/xyz/
[root@localhost xyz]# ls
abc
[root@localhost xyz]# mv abc /home/
[root@localhost xyz]# ls
[root@localhost xyz]# cd /home/
[root@localhost home]# ls
abc  demo  ds  xinghan  zs
[root@localhost home]# mv abc aaa         將abc更名爲aaa
[root@localhost home]# ls
aaa  demo  ds  xinghan  zs
[root@localhost home]#

5.查看目錄

alias:查看命令別名。

pwd (print name of current/working directory):查看當前目錄的全路徑。

ls:顯示目錄或文件,執行ls指令可列出目錄的內容,包括文件和子目錄的名稱。

命令格式:ls [options] [file_or_dirs]

選項和參數:

-a:或--all下全部文件和目錄(包括隱藏的)。

-l:使用詳細格式列表。

-R或--recursive:遞歸處理,將指定目錄下的全部文件及子目錄一併處理。

-ld:顯示指定的目錄或文件的詳細信息。

ls使用演示:

[root@localhost ~]# ls -l install.log
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log         大小單位爲B字節
[root@localhost ~]# ls -lh install.log
-rw-r--r--. 1 root root 41K Oct  4  2015 install.log           大小單位爲KB
[root@localhost ~]# ls -l /home/
drwxr-xr-x.  4 root  root  4096 Jan  1 23:30 demo
drwx------. 27 mengxb mengxb 4096 Oct  4  2015 ds
[root@localhost ~]# ls -ld /home/
drwxr-xr-x. 6 root root 4096 Jan  1 23:30 /home/
[root@localhost ~]# alias ll       #ll不是一個存在的命令,而是一個別名
alias ll='ls –l --color=auto‘
[root@localhost ~]# ls -R /home/     遞歸顯示/home下的內容

6.查看文件

cat:不打開文件查看文件內容。

命令格式:cat [-AbeEnstTuv] [--help] [--version] fileName

選項參數:

-n或--number:由1開始對全部輸出的行數編號。

-b或--number-nonblank:和-n 類似,只不過對於空白行不編號。

-s或--squeeze-blank:當遇到有連續兩行以上的空白行,就代換爲一行的空白行。

-v或--show-nonprinting。

示例:

cat -n textfile1 > textfile2 #把 textfile1 的檔案內容加上行號後輸入 textfile2 這個檔案裏
cat -b textfile1 textfile2 >> textfile3 #把 textfile1 和 textfile2 的檔案內容加上行號(空白行不加)以後將內容附加到 textfile3 裏。

7.切換

cd:切換目錄命令。

命令格式:cd  目標目錄

切換目錄的時候可使用絕對路徑也可使用相對路徑。

絕對路徑:以/開頭的路徑。

相對路徑:相對當前位置的路。

「.」表示當前目錄。「..」表示父目錄。「-」表示前一個目錄(相似電視遙控器上返回)。「~」表示當前用戶home目錄。

「~用戶名」指定用戶名對應的home目錄/用戶名(例如:~xinghan表示目錄就是 /home/xinghan/)。

[root@localhost ~]# pwd
/root
[root@localhost ~]# cd /etc
[root@localhost etc]# cd
[root@localhost ~]# pwd
/root
[root@localhost ~]# su xinghan  #可經過useradd  xinghan添加用戶xinghan
[xinghan@localhost root]$ pwd
/root
[xinghan@localhost root]$ cd
[xinghan@localhost ~]$ pwd
/home/xinghan
[xinghan@localhost ~]$ cd /etc
[xinghan@localhost etc]$ cd ~
[xinghan@localhost ~]$

8.複製

cp:拷貝目錄,能夠同時拷貝多個文件,文件名之間用空格隔開。

命令格式:cp 文件… 目標目錄 拷貝文件…到目標

參數:-r/R:遞歸拷貝

示例:

[root@localhost ~]# cp install.log install.log.syslog  /home/demo/abc
[root@localhost ~]# ll /home/demo/abc/
-rw-r--r--. 1 root root 41364 Jan  1 23:45 install.log
-rw-r--r--. 1 root root  9154 Jan  1 23:45 install.log.syslog
[root@localhost ~]# cd /home/demo/abc/
[root@localhost  abc]# cp /root/install.log  /home/demo/abc  #太麻煩
[root@localhost  abc]# cp ~/install.log  .
[root@localhost ~]# cd /home/demo/
[root@localhost demo]# ls
abc  xyz
[root@localhost demo]# cp abc xyz   #提示cp: omitting directory `abc'
[root@localhost demo]# cp -r abc xyz
[root@localhost demo]# ls xyz
abc

二、系統相關命令

1.開關機

shutdown -h now:立馬關機。

shutdown -h 20:25:系統會在今天20:25關機。

shutdown -h +10:十分鐘後關機。

shutdown -r now:系統立馬重啓。

shutdown -r +10:系統十分鐘後重啓。

reboot:就是重啓。

halt:關閉系統,等同於shutdown -h now 和 poweroff。

2.運行級別

Linux一個有7個運行級別,分別以下:

0:關機。

1:單用戶。

2:無網絡的多用戶。

3:命令行模式。

4:未用。

5:GUI(圖形桌面模式)。

6:重啓

運行級別的切換:init。

命令格式:init 運行級別

查看當前運行級別可使用命令:who、runlevel。

who:顯示當前運行級別以及系統當前時間。

命令格式:who -r

示例:

[root@localhost ~]# who -r
			run-level 5  2017-12-31 15:24

runlevel:使用時,直接輸入當前命令,沒有參數和選項,默認顯示兩個運行級別。

第一個表示當前級別以前使用的運行級別,若無則顯示」N」。第二個表示當前運行級別。

示例:

[root@localhost ~]# runlevel
N 5

三、用戶管理

用戶帳號的管理工做主要涉及到用戶帳號的添加、修改和刪除。

1.新增用戶

添加用戶帳號就是在系統中建立一個新帳號,而後爲新帳號分配用戶號、用戶組、主目錄和登陸Shell等資源。剛添加的帳號是被鎖定的,沒法使用。

添加用戶的命令:useradd。

命令格式:useradd [選項]  用戶名

選項和參數:

-c:comment指定一段註釋性描述。

-d:目錄,指定用戶主目錄,若是此目錄不存在,則同時使用-m選項,能夠建立主目錄。

-g:用戶組,指定用戶所屬的用戶組,即用戶的主組。

-G:用戶組,指定用戶所屬的附加組。

-s:Shell文件,指定用戶的登陸Shell。

-u:用戶號,指定用戶的用戶號,即UID。

增長用戶帳號就是在/etc/passwd文件中爲新用戶增長一條記錄,同時更新其餘系統文件如:/etc/shadow、/etc/group等。

示例:

建立用戶:
#useradd  tom
查看用戶信息:
#id tom     ->顯示UID/GID以及tom還屬於哪些組
[root@localhost ~]# useradd tom
[root@localhost ~]# id tom
uid=500(tom) gid=500(tom) groups=500(tom)
建立用戶,指定其UID爲800:
[root@localhost ~]# useradd -u 800 jerry
[root@localhost ~]# id jerry
uid=800(jerry) gid=800(jerry) groups=800(jerry)

2.查看用戶

id 查看單個用戶的信息。

命令格式:id 用戶名

新增用戶中已有案例。

3.修改用戶

修改用戶帳號就是根據實際狀況更改用戶的有關屬性,如用戶號、主目錄、用戶組、登陸Shell等。修改已有用戶的信息使用usermod命令。

命令格式:usermod  [選項]  用戶名

選項和參數:

經常使用的選項包括-c、-d、-m、-g、-G、-s、-u等,這些選項的意義與useradd命令中的選項同樣,能夠爲用戶指定新的資源值。

另外,-l這個選項指定一個新的帳號,即將原來的用戶名改成新的用戶名。

4.用戶口令

用戶管理的一項重要內容是用戶口令的管理。用戶帳號剛建立時沒有口令,可是被系統鎖定,沒法使用,必須爲其指定口令後纔可使用,即便是指定空口令。

指定和修改用戶口令的Shell命令是:passwd。

超級用戶能夠爲本身和其餘用戶指定口令,普通用戶只能用它修改本身的口令。

命令格式:passwd [選項] 用戶名

選項和參數:

-l:(lock)鎖定口令,即禁用帳號。

-u:(unlock)口令解鎖。

-d:(HOME_DIR)使帳號無口令(刪除密碼)。(此命令僅管理員有效)

示例:

修改密碼。

#passwd

修改本身的密碼,普通用戶修改比較麻煩,須要使用高強度密碼。

#passwd tom

修改tom的密碼,管理員才能夠修改其餘人的密碼,不須要使用高強度密碼。

注:高強度密碼不是夠長就行!!密碼中須要包含字母、數字、特殊符號、密碼長度。

5.切換用戶

su切換用戶。

命令格式:su 目標用戶

管理員切用戶不須要密碼,用戶切管理員須要輸入管理員密碼。

在CentOS中(其餘版本的Linux未測試)普通用戶切換root用戶只須要輸入su回車後輸入root密碼便可切換到root用戶的身份。

6.刪除用戶

刪除用戶使用命令:userdel。

命令格式:

userdel 用戶名:用於刪除指定的用戶。

userdel -r 用戶名:在刪除指定用戶的同時刪除他的home目錄(工做中不建議使用,一個用戶離職後,用戶能夠刪掉,可是他的工做文件極可能還有用)。

示例:

[root@localhost ~]# userdel alice
[root@localhost ~]# ls /home/
alice  demo  ds  jerry  xinghan  tom  zs
[root@localhost ~]# rm -rf /home/alice/
[root@localhost ~]# ls /home/
demo  ds  jerry  xinghan  tom  zs

四、用戶組管理

每一個用戶都有一個用戶組,系統能夠對一個用戶組中的全部用戶進行集中管理。不一樣Linux系統對用戶組的規定有所不一樣,如Linux下的用戶屬於與它同名的用戶組,這個用戶組在建立用戶時同時建立。

用戶組的管理涉及用戶組的添加、刪除和修改,實際上就是對/etc/group文件的更新。

1.新增用戶組

新增長用戶組的命令爲:groupadd。

命令格式:groupadd [選項] 用戶組

選線和參數:

-g GID:指定新用戶組的組標識號(GID)。

-o:通常與-g選項同時使用,表示新用戶組的GID能夠與系統已有用戶組的GID相同。

示例:

新增用戶組emp
#groupadd emp
新增用戶組market,並指定標識號爲8000
#groupadd –g  8000  market
將用戶添加到附加組
#usermod –aG  market   tom   (a:append  G:附加組)
建立一個用戶組與root用戶組GID系統
# groupadd –g 0 –o testroot

2.刪除用戶組

刪除用戶組使用的命令爲:groupdel。

命令格式:groupdel 組名

示例:

從系統中刪除組group1

# groupdel group1

若是刪除的用戶組,已經被用戶追加爲附件組,對應的全部用戶的該附件組會被撤銷掉。

若是被刪除的用戶組,已經被用戶指定爲主組,則該用戶組沒法被刪除。(能夠理解爲像Windows中文件被佔用時不能被刪除。)

3.查看用戶組

查看用戶所在用戶組使用命令:groups。

命令格式:groups 用戶名

若是不跟用戶名,則查詢的是當前用戶所在的分組。

4.修改用戶組

修改用戶組使用的命令爲:groupmod。

命令格式:groupmod  [選項]  用戶組

選項和參數:

-g GID:爲用戶組指定新的組標識號。

-o:與-g選項同時使用,用戶組的新GID能夠與系統已有用戶組的GID相同。

-n:新用戶組,將用戶組的名字改成新名字。

更名格式:groupmod -n newGroupName oldGroupName

示例:

1.將組group2的組標識號修改成102。
# groupmod -g 102 group2
2.將組group2的標識號改成10000,組名修改成group3。
# groupmod –g 10000 -n group3 group2

5.切換用戶組

若是一個用戶同時屬於多個用戶組,那麼用戶能夠在用戶組之間切換,以便具備其餘用戶組的權限。用戶能夠在登陸後,使用命令newgrp切換到其餘用戶組,這個命令的參數就是目的用戶組。例如:

$ newgrp root

這條命令將當前用戶切換到root用戶組,前提條件是root用戶組確實是該用戶的主組或附加組,此時直接輸入id後可直接查看到用戶的當前組已被切換(但注意這裏成爲組內成員並不表明擁有了root權限,想像一下你的情書是否願意讓組員查看。)

[xinghan@CentOS ~]$ id
uid=500(xinghan) gid=0(root) 組=500(xinghan),0(root) 環境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

上一篇:虛擬機:CentOS 7系統安裝

下一篇:Linux基礎之權限

相關文章
相關標籤/搜索