Linux shell基礎操作

2021-09-25 09:29:27 字數 3021 閱讀 9812

linux作業系統基礎高階練習題02

linux shell

1).更改shell

1.1).利用ps1變數改變命令提示,新提示符包括使用者帳號名稱(u),主機名(h),完整路徑(w),時間(a),歷史命令個數(#)

1.2).更改ls顯示目錄檔案的顏色為白色字型,藍色背景

參***:

ps1=』[\u@\h \w \a ##]$ 』

echo lsc

olor

sdec

lare

−xls

colo

rs

=ls_colors declare -x ls_colors=

lsc​ol

orsd

ecla

re−x

lsc​

olor

s=ls_colors:「di=00;37;44」

4).提示使用者 30 秒內輸入自己的名字,將該輸入字串儲存到 named 變數

參***:

read -p "please input your name: " -t 30 named

5).變數運算

5.1).進行 100+300+50 的加運算,將結果存入數值變數sum

5.2).定義a=3,b=5,輸出a+b的和

5.3).顯示輸出your cost is $5.00

參***:

declare -i sum=100+300+50

echo $sum

a=3b=5

echo [

[[a + $b]

echo your cost is $5.00

8).立即將當前的歷史命令寫到history檔案中

參***:

history -w

9).顯示所有stty的引數,將erase更改為ctrl+h

參***:

stty -a

stty erase ^h

10).將erase更改為預設的後退鍵(backspace)

參***:

stty erase ^?

11).列印輸出path 變數的第五個路徑

參***:

echo $path|cut -d 『:』 -f 5

12).列印輸出path變數的第3列與第5列

參***:

echo $path | cut -d 『:』 -f 3,5

13).輸出export命令的資訊,但要求是每行第12字元以後的字串

參***:

export | cut -c 12-

14).顯示/etc/passwd 內容是以 : 來分隔的,以字元形式來排序第三欄

參***:

cat /etc/passwd | sort -t 『:』 -k 3

15).顯示/etc/passwd 內容是以 : 來分隔的,以數字形式來排序第三欄

參***:

cat /etc/passwd | sort -t 『:』 -k 3 -n

16).聚合last命令的帳號一欄

參***:

last | cut -d 』 』 -f1 | sort | uniq -c

17).將ls -l /home資料存乙份到 ~/homefile ,同時輸出到螢幕

參***:

ls -l /home | tee ~/homefile | more

18).將ls -l /資料追加乙份到~/homefile下,同時輸出到螢幕

參***:

ls -l / | tee -a ~/homefile | more

19).列印輸出/etc/passwd檔案,將冒號 (? 刪除

參***:

cat /etc/passwd | tr -d 『:』

21).將 /etc/passwd 與 /etc/group 整合,依據的是/etc/passwd第4列的gid,及/etc/group第3列的gid

參***:

join -t 『:』 -1 4 /etc/passwd -2 3 /etc/group

22).將 /etc/passwd 與 /etc/shadow 同一行貼在一起

參***:

paste /etc/passwd /etc/shadow

23).通過ulimit,顯示所有當前資源極限

參***:

ulimit -a

24).通過ulimit設定建立檔案的最大塊為1,一塊為512位元組,拷貝passwd檔案進行測試

參***:

ulimit -f 1

cp /etc/passwd .

25).通過ulimit設定建立檔案的最大塊數為無限制

參***:

ulimit -f unlimited

26).檢視/etc/passwd檔案,依據每行的第二個字元進行排序

參***:

cat /etc/passwd|sort -k 1.2

27).檢視/etc/yp.conf是否有拼寫錯誤

參***:

aspell check /etc/yp.conf

28).xargs的用法

28.1).新建三個檔案:1.txt,2.txt,3.txt

28.2).用ls -l將三個檔名重定向到delete.txt

28.3).用xargs通過delete.txt將三個檔案刪除

參***:

touch 1.txt 2.txt 3.txt

ls -l 1.txt 2.txt 3.txt|awk 『』>delete.txt

cat delete.txt |xargs rm -f

29).bash內建的命令集

29.1).檢視內建的命令集

29.2).嘗試開啟bash下vi屬性,按esc鍵進入vi的命令操作介面,敲i進入插入,敲入hacker,敲esc鍵,用dd刪除當前行

29.3).關閉bash的vi屬性

參***:

set -o

set -o vi

set +o vi或用bash命令恢復

Linux Shell指令碼基礎

shell指令碼在處理自動迴圈或大的任務方面可節省大量時間,且功能強大。任何指令碼都可能有注釋,加注釋需要此行的第乙個字元為 直譯器對此行不予解釋。指令碼不是複雜的程式,它是按行解釋的。指令碼第一行總是以 bin sh開始,這段指令碼通知shell使用系統上的 bourne shell直譯器。指令碼...

Linux Shell程式設計基礎

簡單學習了一下shell 程式設計的一些基礎知識,這裡作各總結吧。1,變數 shell變數分為本地變數,環境變數,位置變數和預定義變數 1 本地變數 本地變數是只能在使用者寫的shell指令碼生命週期中有效的變數,在使用者的shell退出之後,該變數就不存在了。一般的定義格式為 local vari...

linux shell基礎命令

建立檔案 touch file1 複製檔案file1成file2 cp file1 file2 複製整個目錄的內容 cp r file1 file2 建立檔案硬連線 cp l file1 file2 建立檔案軟連線 cp s file1 file2 重新命名檔案 mv file1 file2 建立目...