Linux 基礎知識 三

2021-09-27 04:57:38 字數 3891 閱讀 5308

1、定義乙個對所有使用者都生效的命令別名,例如:1ftps='1ftp 172.168.0.1/pub'

alias(設定指令的別名)命令詳解 

語  法:alias[別名]=[指令名稱]  如: alias bb = 'bbbbb -f'

說明:使用者可利用alias,自定指令的別名。若僅輸入alias,則可列出目前所有的別名設定。 alias的效力僅及於該次登入的操作。若要每次登入是即自動設好別名,可在/etc/profile或自己的~/.bashrc中設定指令的別名。

還有,如果你想給每一位使用者都生效的別名,請把alias bbb ='bbbb -f' 一行加在/etc/bashrc最後面,bashrc是環境變數的配置檔案 /etc/bashrc和~/.bashrc 區別就在於乙個是設定給全系統乙個是設定給單使用者使用 

參  數:若不加任何引數,則列出目前所有的別名設定。

[root@centos6 ~]# echo alias "lfpts='lftp 172.168.0.1/pub'" >>/etc/bashrc

[root@centos6 ~]# source /etc/bashrc

[root@centos6 ~]# alias

alias cp='cp -i'

alias l.='ls -d . --color=auto'*

alias lfpts='lftp 172.168.0.1/pub'

alias ll='ls -l --color=auto'

alias ls='ls --color=auto'

alias mv='mv -i'

alias rm='rm -i'

alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

2、顯示/etc/passwd檔案中不以/bin/bash結尾的行

[root@benny ~]# grep -v "/bin/bash" /etc/passwd

3、找出/etc/passwd檔案中,包含二位數字或者三位數的行。

[root@benny ~]# grep "\<[0-9]\>" /etc/passwd

or[root@benny ~]# grep "\<[0-9]\>" /etc/passwd

4、顯示/proc/meminfo檔案中以大寫或小寫s開頭的行;用三種方式實現。

[root@benny ~]# grep -i "^s" /proc/meminfo

[root@benny ~]# grep "^[ss]" /proc/meminfo

[root@benny ~]# grep -e "^(s|s)" /proc/meminfo

[root@benny ~]# grep -e "^[ss]" /proc/meminfo

5、使用echo輸出乙個絕對路徑,使用egrep取出路徑名,型別執行dirname/etc/passwd的結果。

[root@benny ~]# echo /etc/passwd | egrep -o "^/.*/"

6、找出ifconfig中的ip位址。要求結果只顯示ip位址。

[root@benny ~]# ifconfig ens33 | grep "inet " | tr -s ' ' ':' | cut -d: -f3

7、vin定製自動縮排四個字元。

vim /etc/vimrc

set ts=4

8、編寫指令碼,實現自動新增三個使用者,並計算這三個使用者的uid之和。

#!/bin/bash

#author benny

#miaoshu 新增三個使用者,並計算這三個使用者的uid之和

useradd test1

useradd test2

useradd test3

test1uid=cat /etc/passwd | egrep ^test1 | cut -d':' -f3

test2uid=cat /etc/passwd | egrep ^test2 | cut -d':' -f3

test3uid=cat /etc/passwd | egrep ^test3 | cut -d':' -f3

totaluid=$(($test1uid+$test2uid+$test3uid))

echo "totaluid=$totaluid"

9、find用法以及常用用法的例項演示。

引數說明:

find 根據下列規則判斷 path 和 expression,在命令列上第乙個 - ( ) , ! 之前的部份為 path,之後的是 expression。如果 path 是空字串則使用目前路徑,如果 expression 是空字串則使用 -print 為預設 expression。

expression 中可使用的選項有二三十個之多,在此只介紹最常用的部份。

-mount, -xdev : 只檢查和指定目錄在同乙個檔案系統下的檔案,避免列出其它檔案系統中的檔案

-amin n : 在過去 n 分鐘內被讀取過

-anewer file : 比檔案 file 更晚被讀取過的檔案

-atime n : 在過去n天內被讀取過的檔案

-cmin n : 在過去 n 分鐘內被修改過

-cnewer file :比檔案 file 更新的檔案

-ctime n : 在過去n天內被修改過的檔案

-empty : 空的檔案-gid n or -group name : gid 是 n 或是 group 名稱是 name

-ipath p, -path p : 路徑名稱符合 p 的檔案,ipath 會忽略大小寫

-name name, -iname name : 檔名稱符合 name 的檔案。iname 會忽略大小寫

-size n : 檔案大小 是 n 單位,b 代表 512 位元組的區塊,c 表示字元數,k 表示 kilo bytes,w 是二個位元組。-type c : 檔案型別是 c 的檔案。

d: 目錄

c: 字型裝置檔案

b: 區塊裝置檔案

p: 具名貯列

f: 一般檔案

l: 符號鏈結

s: socket

-pid n : process id 是 n 的檔案

你可以使用 ( ) 將表示式分隔,並使用下列運算。

exp1 -and exp2

! expr

-not expr

exp1 -or exp2

exp1, exp2

將目前目錄及其子目錄下所有延伸檔名是 c 的檔案列出來。

​ [root@benny /]# find . -name "*.c"

將目前目錄其其下子目錄中所有一般檔案列出

[root@benny /]# find . -type f

將目前目錄及其子目錄下所有最近 20 天內更新過的檔案列出

[root@benny ~]# find . -ctime -20

查詢/var/log目錄中更改時間在7日以前的普通檔案,並在刪除之前詢問它們:

[root@benny ~]# ind /var/log -type f -mtime +7 -ok rm {} \;

查詢前目錄中檔案屬主具有讀、寫許可權,並且檔案所屬組的使用者和其他使用者具有讀許可權的檔案:

[root@benny ~]# find . -type f -perm 644 -exec ls -l {} \;

為了查詢系統中所有檔案長度為0的普通檔案,並列出它們的完整路徑:

[root@benny ~]# find / -type f -size 0 -exec ls -l {} \;

linux基礎知識三

修改linux的命令提示符 ps1控制變數 echo ps1 u h w 大寫相對路徑 修改變數的值 ps1 u h w 小寫絕對路徑 更改變數只是臨時一次 下次重啟恢復預設狀態 ls lah 顯示全部資訊 並顯示大小 mkdir abc dfg 建立倆個資料夾 用 tree命令檢視檔案樹狀圖 安裝...

Linux基礎知識(三)

9.基礎命令九 檢視檔案所在位置的命令 1 which which命令的作用是 在path變數指定的路徑中,搜尋某個系統命令的位置,並且返回第乙個搜尋結果。也就是說,使用which命令,就可以看到某個系統命令是否存在,以及執行的到底是哪乙個位置的命令。2 whereis whereis命令只能用於程...

linux基礎知識(三)

新增使用者 useradd d 家目錄 g 組名 g 組集合 逗號間隔 p 密碼 s 使用者shell程式 使用者名稱 useradd d usr local nginx g nginx g nginx,oracle p123456 s bin bash test4 若沒有使用 p,可以使用命令加密...