關機和重啟命令
關機和重啟隻有管理員可以執行
1、 關機命令
shutdown //關機
shutdown -h now //立刻馬上關機
shutdown -h 60 //60分鐘後關機
2、 重啟命令
reboot //重啟系統
shutdown -r now //立刻馬上重啟
shutdown -r 20 //20分鐘後重啟系統
注:shutdown -c //取消關機或重啟
Linux下路徑表示方法1、 絕對路徑
A、 一定是以"/"(根)開頭,它是唯一一個絕對能夠描述文件所在路徑的方式。
B、 "/"根目錄是linux操作系統最頂級的目錄,沒有任何路徑比它還要靠前。
2、 相對路徑
A、 路徑是相對的,文件所在的路徑是相對于當前所在路徑而言的。
B、 當前路徑使用 .或./ 表示;當前目錄的上一級目錄使用 …或…/ 表示
C、 當前用戶家目錄使用 ~ 表示;上次工作路徑使用-表示
3、 路徑切換和查看的相關命令
pwd //查看當前工作路徑
cd //更改工作路徑,切換路徑(默認切換到當前用戶的家目錄)
舉例說明:
[root@zjs64 ~]# pwd //打印當前工作路徑
/root
[root@zjs64 ~]# cd /home //切換到/home目錄下
[root@zjs64 home]# cd …/ //切換到當前路徑的上一級目錄
[root@zjs64 /]# pwd
/
[root@zjs64 /]# cd ~ //切換到當前用戶家目錄
[root@zjs64 ~]# cd - //切換到上一次工作路徑
/
[root@zjs64 /]# cd //切換到當前用戶家目錄
[root@zjs64 ~]# pwd
/root
RHEL8文件操作管理Linux下,一切皆文件!
注:1、接下來所有的命令需要在一個載體上執行,這個載體就叫做終端。
2、終端上所有命令都需要一個東西翻譯解析一下,計算機才能理解并執行。這個翻譯解析的東西叫SHELL解釋器,RedHat和Centos默認shell解釋器叫bash。
3、既然需要bash幫忙翻譯解釋相關命令,那麼你所敲的命令必須符合它的語法,否則報錯。
命令 [可選項] 參數
[root@localhost ~]# ls -l/root
命令:整條shell命令的主體
選項:會影響或微調命令的行為,通常以-, --實現
參數:命令作用的對象
1、常見文件類型
A、常見文件類型
d:目錄文件:相當于Windows下的文件夾。
l:鍊接文件:類似于Windows下的快捷方式。
b:塊設備文件:所有存儲設備,如:磁盤、光盤、U盤、光驅等。
c:字符設備文件:所有輸入輸出的設備,如:鍵盤、鼠标、打印機等。
p:管道文件:簡單理解為程序或進程之間通訊的一種方式。
-:表示普通文件:類似Windows下記事本、word等,可以使用相關命令進行編輯、查看文件内容。
B、目錄文件不同顔色含義
用file命令判斷文件類型
[root@localhost ~]# file /root
/root: directory 目錄
[root@localhost ~]# file /root/install.log
/root/install.log: ASCII text 普通的文本文件
[root@localhost ~]# file /dev/sda
/dev/sda: block special 塊設備文件,存放數據
[root@localhost ~]# file /dev/tty1
/dev/tty1: character special 字符設備
[root@localhost ~]# file /bin/sh
/bin/sh: symbolic link to bash 軟連接文件
2、ls——列出目錄内容
常見選項:
-a all,查看目錄下的所有文件,包括隐藏文件
-l 長列表顯示
-h human,以人性化方式顯示出來
-d 隻列出目錄名,不列出其他内容
-t 按修改時間排序
-r 逆序排列 -S 按文件的大小排序
-i 顯示文件的inode号(索引号)
-R 遞歸列出目錄中的内容
-m 用逗号分隔顯示内容
3、mkdir——創建目錄
常見選項
-p 級聯創建
[root@localhost~]# mkdir /test/ //在根下創建test目錄
[root@localhost~]# mkdir ./test/ //在當前目錄下創建test目錄
[root@localhost~]# mkdir -p /test/yunwei/redhat
說明:如果創建的目錄的上一級目錄不存在,就需要加-p參數;-p在前面和後面都可以。
4、touch——創建文件
注:Linux下文件的命名規則
1、文件名嚴格區分大小寫 file FILE
2、文件名不能包含特殊符号,如(/或*等)
3、文件名最多可達255個字符
A、創建一個新的空文件(目标文件不存在)
準備環境,删除/tmp/目錄下的所有文件
[root@localhost ~]# rm –rf /tmp/*
[root@localhost ~]# touch /tmp/file1 //在/tmp目錄下創建file1文件
[root@localhost ~]# touch file1 //在當前目錄下創建file1文件
注:以上兩個file1文件雖然名字相同,但不是同一個文件,因為路徑不一樣。
B、修改文件時間(目标文件存在)
a、查看文件的相關時間
[root@localhost tmp]# stat /tmp/file1 //查看文件的狀态信息
Access:文件的查看訪問時間
Modify:文件的修改時間
Change:文件的屬性時間,文件的大小、權限等信息發生改變時,該時間會變化
b、修改文件的時間
[root@localhost tmp]# touch -a file1 -t 201506161320 修改文件點訪問時間
[root@localhost tmp]# touch -m file1 -t 201612121330 修改文件修改時間
-a:訪問時間
-m:修改時間
-t:時間類型格式
[root@localhost tmp]# touch -d 20110808 file1 修改文件日期
[root@localhost tmp]# touch -d 1215 file1 修改文件時間
[root@localhost tmp]# touch -d “20101012 11:11:11” file1 修改文件的日期和時間
說明:隻需要掌握touch -d的用法即可。
注:RHEL6開始relatime,atime延遲修改,必須滿足其中一個條件:
5、查看文件内容
cat 命令:一般查看小文件,從第一行到最後一行列出來
常見選項:
-n:顯示行号
-A:顯示控制字符,如換行符,制表符等( linux $ 和 Windows ^M$ )
tac 命令:一般查看小文件,從最後一行到第一行列出來
more和less 命令:一般查看大文件,q退出查看,可以搜索,建議less命令
head 命令:默認查看文件前10行,head -n 15或head -15表示查看前15行
tail 命令:默認查看文件後10行,tail -n 15或tail -15表示查看後15行;-f 表示動态查看
ldd 命令:一般用來查看二進制的命令文件
[root@localhost tmp]# cat /etc/passwd 查看/etc/passwd文件内容
[root@localhost tmp]# cat -n /etc/passwd查看/etc/passwd文件内容,并打印行号
[root@localhost tmp]# tac /etc/passwd 查看/etc/passwd文件内容
[root@localhost tmp]# head -5 /etc/passwd 查看/etc/passwd文件的前5行内容
[root@localhost tmp]# tail -5 /etc/passwd查看/etc/passwd文件的後5行内容
[root@localhost tmp]# more /var/log/messages
[root@localhost tmp]# less /var/log/messages
[root@localhost tmp]# ldd /bin/mkdir 查看mkdir命令文件(二進制)的内容
6、cp——拷貝文件
注:本地文件拷貝
常用選項:
-a 遞歸拷貝文件,包括目錄及文件屬性信息
-r 遞歸拷貝目錄
-p 文件屬性信息拷貝
-v 顯示拷貝過程信息
用法:
cp 選項 需要拷貝的文件 拷貝到哪裡去
舉例說明:
#cp /root/file1 /home 拷貝/root/下的file1文件到/home目錄下
#cp -r /home/itcast /root 拷貝/home/itcast目錄到/root目錄下
#su - user01 切換到user01用戶下
$ touch file1
#cp -p /home/user01/file1 /tmp/ 拷貝home/user01/file1文件(包含屬性信息)到/tmp下
#cp /root/file1 /tmp/test1 拷貝文件并且重命名
注:-a和-p都需要拷貝文件的屬性信息
-p隻能拷貝文件
-a既可以拷貝文件 也可以拷貝目錄
7、mv——移動或重命名文件
移動文件用法(不同路徑下):
#mv 需要移動的文件 移動到新的路徑下注:文件的路徑不一樣
重命名用法(相同路徑下):
#mv 原來文件的名字 新文件的名字
注:老文件和新文件的路徑一樣
#mv /root/file1 /tmp //移動/root/file1文件到/tmp目錄下
#mv /tmp/file1 /tmp/test1 //将/tmp目錄下的file1文件重命名成test1
8、rm——删除文件
常用選項
-r 遞歸删除,一般用于删除目錄
-f 直接删除,不提示
[root@localhost tmp]# rm file1 删除當前目錄下的file1文件,有提示 [root@localhost tmp]# rm -r dir1 删除當前目錄下的dir1目錄,有提示[root@localhost tmp]# rm -f /root/file1 強制删除/root/file1文件,不提示,直接删
擴展
(一)、Linux下如何獲取幫助
1、help——簡約幫助
help命令:知道該命令的含義,相關參數不知道可以使用help
内部命令求幫助:help 命令
外部命令求幫助:命令 --help
cp --help
help cd
2、man——詳細幫助
#man man
ANUAL SECTIONSThe standard sections of the manual include:1 User Commands 所有用戶使用命令2 System Calls 系統調用3 C Library Functions 函數庫4 Devices and Special Files 設備與特殊文件5 File Formats and Conventions 文檔格式說明6 Games et. Al. 遊戲7 Miscellanea 雜項8 System Administration tools and Deamons 系統管理員與程序用戶相關
一般情況是不需要使用章節号,例如:
#man 1 ls
#man ls
#man useradd
#man setfacl (/EXAMPLES)
#man -f passwd 列出所有章節中的passwd手冊
#man 1 passwd passwd命令的幫助
#man 5 passwd 用戶配置文件的幫助
#man -a passwd 在所有章節中查找
#man -k passwd 以關鍵字導出man page
程序猿手冊 man 23467
管理員手冊 man 158
(二)、Bash的标準輸入輸出
1、名詞解釋
标準輸入(stdin):鍵盤上的輸入 文件描述符—>0
标準輸出(stdout):屏幕上正确的輸出 文件描述符—>1
标準錯誤(stderr):屏幕上錯誤的輸出 文件描述符—>2
2、相關符号
:标準輸出重定向,覆蓋重定向, 1>或> 标準輸出重定向, 2> 标準錯誤重定向:重定向追加, 1>> 标準輸出追加, 2>> 标準錯誤追加
< :标準輸入
&> :标準輸出标準錯誤重定向
3、舉例說明說明
① 環境準備
編寫簡單腳本(先直接複制用,後面說):
[root@localhost ~]# echo -e ‘date\nuuu’ > 1.sh 創建1.sh腳本文件
[root@localhost ~]# cat 1.shdateuuu執行1.sh腳本,屏幕上有輸出結果,如下:
[root@localhost ~]# bash 1.sh
Sat Apr 18 14:00:09 EDT 2020 正确的結果叫标準輸出
1.sh: line 2: uuu: command not found 錯誤的結果叫标準錯誤
② 需求1:
将标準輸出(屏幕上的正确結果)重定向到/tmp/1.log文件中
[root@localhost ~]# bash 1.sh > /tmp/1.log
1.sh: line 2: uuu: command not found 标準錯誤(錯誤結果)依然在屏幕,正确結果到文件中了
[root@localhost ~]# cat /tmp/1.log 文件裡是标準輸出的結果
Sat Apr 1814:05:27 EDT 2020
③ 需求2:
[root@localhost ~]# bash 1.sh 2>/tmp/2.log
Sat Apr 18 14:06:06 EDT 2020 标準輸出依然在屏幕,标準錯誤重定向到了文件中
[root@localhost ~]# cat /tmp/2.log
1.sh: line 2: uuu: command not found 文件裡是标準錯誤的結果
注:>或者2>都表示覆蓋重定向
查看/etc/hosts文件内容,并将标準輸出重定向到/tmp/1.log
[root@localhost ~]# cat /etc/hosts >/tmp/1.log
[root@localhost ~]# cat /tmp/1.log 查看該文件,發現原來内容被覆蓋 127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4
::1 localhostlocalhost.localdomain localhost6 localhost6.localdomain6
總結:>或者1>表示标準輸出重定向;2>表示标準錯誤重定向
④ 需求3:
将标準輸出和标準錯誤一起重定向到/tmp/3.log裡
[root@localhost ~]# bash 1.sh&>/tmp/3.log
[root@localhost ~]# cat /tmp/3.log
Sat Apr 18 14:06:36 EDT 2020
- sh: line 2: uuu: command not found
注:
&>表示标準輸出和标準錯誤一起重定向
4、echo命令
echo會将輸入的字符串送往标準輸出,并在最後加上換行符。 可以理解為打印字符串。
常見選項:
-n :不輸出最後的換行符“\n”
-e:解釋轉義字符(字符串中出現\n、\t等特殊字符,則特别加以處理,而不會将它當成一般文字輸出)
舉例說明:
[root@localhost~]# echo hello world 打印hello worldhello world
[root@localhost~]# echo aaaa 打印aaaaaaaa
[root@localhost~]# echo hello > file1 将hello重定向到file1文件中[root@localhost~]# cat file1
Hello
總結:
- echo表示打印字符串,默認将字符串送往标準輸出;默認會打印一個換行符
- echo可以結合>或者>>符号來使用,進行文件的創建或内容追加。
常見控制字符:
\t 表示制表符
\n 表示換行符
[root@localhost~]# echo -e ‘date\nuuu’ > 1.sh //-e表示将\n解釋為換行符
[root@localhost~]# cat 1.sh
date
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!