操作系統高頻(五)linux命令
1.Linux中查看進程運行狀態的指令、tar解壓文件的參數。???
在Linux中,可以使用以下指令查看進程的運行狀態:
top:
用于實時監視系統的進程活動和系統資源使用情況。在終端中運行top命令,可以查看進程的CPU占用、內存占用、運行時間等信息。
ps:用于顯示當前正在運行的進程。常用的參數包括:
ps -aux:顯示所有正在運行的進程的詳細信息。
ps -ef:顯示所有正在運行的進程的完整信息。
對于tar解壓文件,可以使用以下參數:
- x:表示解壓文件。
- v:可選參數,表示顯示詳細的解壓過程。
- f:后面接需要解壓的文件名。
- z:可選參數,用于解壓gzip格式的文件。
- j:可選參數,用于解壓bzip2格式的文件。
- C:指定解壓目錄,后面接目標目錄。
例如,使用以下命令解壓一個tar文件:
tar -xvf file.tar
如果需要解壓一個gzip格式的tar文件,可以使用以下命令:
tar -xzvf file.tar.gz
2.說說常用的Linux命令???
man | 幫助命令 |
ls命令 | 查看當前文件與目錄信息 |
cd命令 | 用于切換當前目錄 |
pwd命令 | 用于顯示工作目錄。 |
mkdir命令 | mkdir 命令用于創建文件夾。 |
rm命令 | 刪除文件或文件夾命令 |
rmdir 命令 | 從一個目錄中刪除一個或多個子目錄項 |
mv命令 | 移動文件或文件夾命令 |
cp命令 | 復制命令 |
cat命令 | 查看文件內容;連接文件 |
more命令 | more 會以一頁一頁的顯示文件內容 |
less命令 | less 與 more 類似,但使用 less 可以隨意瀏覽文件 |
grep命令 | 該命令常用于分析一行的信息,若當中有我們所需要的信息,就將該行顯示出來,該命令通常與管道命令一起使用,用于對一些命令的輸出進行篩選加工。 |
ps命令 | 查看進程情況 |
top命令 | 可以查看操作系統的信息,如進程、CPU占用率、內存信息等 |
kill命令 | 向進程發送終止信號 |
3.如何創建一個新的目錄???
要在Linux中創建一個新的目錄,可以使用mkdir命令。mkdir是用于創建目錄的命令,下面是它的基本用法:
mkdir 目錄名
其中,"目錄名"是您想創建的新目錄的名稱。以下是一些示例:
mkdir mydir # 創建一個名為 "mydir" 的目錄
mkdir /path/to/mydir # 創建一個位于指定路徑 "/path/to" 下的目錄,名稱為 "mydir"
如果您希望同時創建多層級的目錄,可以使用-p參數:
mkdir -p /path/to/mydir # 創建一個嵌套多層級的目錄 "/path/to/mydir"
請注意,您需要擁有足夠的權限才能在所選位置創建目錄。如果您沒有權限,您可能需要使用sudo命令或聯系系統管理員來執行該操作。
4.說說如何以root權限運行某個程序。?
- 要以root權限運行某個程序,您可以使用sudo命令。sudo命令允許普通用戶以超級用戶(即root用戶)的權限來執行命令。下面是使用sudo命令來以root權限運行程序的步驟:
sudo ./app
- 使用sudo su 進入root用戶下運行程序
1. sudo su 先進入root用戶
2. ./app 再運行程序
5.linux里如何查看一個想知道的進程??
在 Linux 中,您可以使用?ps?命令來查看正在運行的進程。ps?命令用于報告當前活動進程的快照。以下是使用?ps?命令來查看進程的常見用法:
查看所有進程:
ps aux
查看特定用戶的進程:在上述命令中,將 "用戶名" 替換為要查看其進程的實際用戶名。
ps -u 用戶名
查找特定進程:將 "進程名" 替換為要查找的實際進程名。
ps -ef | grep 進程名
這些命令將顯示有關正在運行的進程的信息,例如進程 ID (PID)、父進程 ID (PPID)、CPU 使用情況、內存使用情況等。
6. Linux里如何查看帶有關鍵字的日志文件??
在 Linux 中,您可以使用?grep?命令來查找帶有關鍵字的日志文件。grep?命令用于在文件中搜索指定的模式或關鍵字,并將匹配的行打印出來。以下是使用?grep?命令查看帶有關鍵字的日志文件的常見用法:
grep "關鍵字" 文件路徑
在上述命令中,將 "關鍵字" 替換為您要查找的實際關鍵字,將 "文件路徑" 替換為您要搜索的日志文件的路徑和名稱。
另外,您可以結合使用?grep?和其他命令,例如?cat?或?tail,以更好地查看和篩選日志文件中的內容:
- 使用?cat?命令查看整個日志文件并在其中搜索關鍵字:
- 使用?tail?命令查看日志文件的末尾內容并在其中搜索關鍵字:
在這些命令中,使用管道(|)將結果從一個命令傳遞給另一個命令,使您能夠在日志文件中進行篩選和搜索。
請注意,在使用?grep?命令時,關鍵字的匹配是區分大小寫的。如果您想要執行大小寫不敏感的搜索,您可以使用?-i?選項,如下所示:
grep -i "關鍵字" 文件路徑
7.說說你對grep命令的了解??
grep?是一個強大的 Linux 命令,用于在文件中搜索指定的模式或關鍵字,并將匹配的行打印出來。其名稱來自于 "Global Regular Expression Print"(全局正則表達式打印)。
以下是關于?grep?命令的一些重要概念和用法:
基本用法:
grep '模式' 文件路徑替換?'模式'?為您要搜索的實際模式或關鍵字。替換?'文件路徑'?為您要搜索的文件路徑和名稱。
文件搜索:
grep?可以搜索一個或多個文件,甚至可以使用通配符來匹配一類文件。例如:grep 'pattern' file1.txt:在單個文件中搜索指定模式。grep 'pattern' file1.txt file2.txt:在多個文件中搜索指定模式。grep 'pattern' *.txt:在當前目錄下所有以?.txt?結尾的文件中搜索指定模式。
遞歸搜索:
grep?可以遞歸搜索指定目錄和子目錄中的文件。使用?-r?或?--recursive?選項來執行遞歸搜索。例如:grep -r 'pattern' directory:在指定目錄及其子目錄中遞歸搜索指定模式。
正則表達式:
grep?支持使用正則表達式進行模式匹配。正則表達式可以更強大地指定模式的規則。例如:grep 'pat*tern' file.txt:使用通配符(*)匹配模式的一部分。
輸出控制:
grep?可以選擇不同的輸出模式和格式。例如:grep -l 'pattern' file.txt:僅打印匹配模式的文件名,而不打印匹配的行。grep -n 'pattern' file.txt:在打印匹配行的同時,顯示行號。
多重條件:
grep?可以使用多個條件組合搜索。例如:grep 'pattern1|pattern2' file.txt:在文件中搜索滿足?pattern1?或?pattern2?的行。
8.Linux修改主機名的命令是什么??
在 Linux 中,要更改主機名,您可以使用以下命令:
- hostnamectl set-hostname:將 "新主機名" 替換為您要設置的新主機名。請注意,您需要使用管理員權限(例如?sudo)來運行此命令。
- hostname:同樣,將 "新主機名" 替換為您要設置的新主機名,并使用管理員權限運行命令。
請注意,在某些系統上,修改主機名后可能需要重啟系統才能使更改生效。
此外,您還可以編輯?hosts?文件來更改主機名。hosts?文件通常位于?/etc/hosts:
sudo vi /etc/hosts
在該文件中,您可以找到類似以下的行:
127.0.0.1 ???舊主機名
將其中的 "舊主機名" 替換為您要設置的新主機名,保存并退出文件即可。
9.請你說說ping命令??
以下是?ping?命令的一些重要概念和用法:
基本用法:
ping 目標主機例如,ping www.example.com?或?ping 192.168.0.1。替換 "目標主機" 為您想要測試的實際主機名或 IP 地址。
持續模式:
默認情況下,ping?發送一系列網絡探測包給目標主機并等待響應,然后顯示結果并終止。如果希望持續進行測試,可以使用?-t(在 Windows)或?-c(在 Linux 和 macOS)選項。例如,ping -t www.example.com?或?ping -c 10 192.168.0.1。替換 "10" 為您想要發送的探測包數量。
終止測試:
按下?Ctrl+C(在 Windows、Linux 和 macOS)可以終止?ping?命令的持續測試。
輸出信息:?
ping?命令顯示每個探測包的發送和接收時間、往返時間(RTT)以及丟包情況。它還提供有關目標主機的 IP 地址和主機名的信息。
參數選項:
?ping?命令提供一些選項,使您可以對測試進行定制。-i:可以指定發送探測包之間的時間間隔(僅適用于 Linux 和 macOS)。-s:可以指定要發送的探測包的大小(僅適用于部分系統)。
ICMP 協議:
?ping?命令使用 ICMP (Internet Control Message Protocol)來發送探測包和接收響應。通過發送 ICMP Echo Request 包并等待目標主機返回 ICMP Echo Reply 包,可以測試網絡的可達性和延遲。
10.簡述GDB常見的調試命令,什么是條件斷點,多進程下如何調試。???
GDB(GNU Debugger)是一個強大的命令行調試工具,用于對程序進行調試和分析。下面是 GDB 的常見調試命令以及關于條件斷點和多進程調試的簡要說明:
常見調試命令:
- break(或?b):設置斷點,斷點可以在指定的源代碼行位置暫停程序的執行。
- run(或?r):啟動程序的執行,如果有斷點,則執行到第一個斷點處暫停。
- continue(或?c):繼續執行程序,直到遇到下一個斷點或程序結束。
- next(或?n):執行下一條語句,但是不會進入函數。
- step(或?s):執行下一條語句,并進入函數。
- print(或?p):打印變量的值。backtrace(或?bt):打印函數調用堆棧。
- quit(或?q):退出 GDB。
條件斷點:
條件斷點是根據給定的條件在程序執行過程中暫停的斷點。可以使用?break?命令并在源代碼行位置后添加條件表達式來設置條件斷點。例如:其中?line_number?是要設置斷點的源代碼行號,condition?是表示條件的表達式。只有當條件表達式為真時,斷點才會觸發。
多進程調試:
在 GDB 中,可以調試多進程程序。使用?attach?命令可以連接到正在運行的進程,讓 GDB 托管該進程進行調試。例如:其中?pid?是要調試的進程的進程 ID。連接成功后,就可以使用調試命令對該進程進行調試。還可以使用?info inferiors?命令查看當前連接的進程列表。另外,GDB 還提供了一些特殊的命令用于處理多進程調試,如?inferior?命令用于切換當前活動進程,detach?命令用于從進程中分離 GDB。