1.取得路徑的文件名和路徑名稱
basename
dirname
2.指令和檔案的搜尋
which尋找執行檔():which 【-a】 command
which 是從用戶設定的PATH變量中的目錄內去搜尋可執行文件,-a可以搜尋出所有同名的執行檔,而不僅僅是第一個被搜尋出來的。
bash的內建指令用: type
檔案名或者目錄名:find (速度較慢)// whereis 或者locate(數據庫中尋找)
3.變量
需求原因:
變量的可變性和方便性,不同的登陸者可以以不同的名字來命名
腳本程序設計的方便,對全局性變量的修改
變量用法:
****環境變量是在用戶登錄到shell之前就已經有的,系統用它來提取信息,配置環境
取用:echo,
設置爲環境變量:export
PATH=$PATH:your own path
PATH="$PATH":your own path
PATH=${PATH}:your own path
****name = "wanghan"
****name = $nameyes或者${name}yes
【】在bash內重新開啓的bash,視爲子程序,父程序中的自定義的變量是無法在子程序內使用
通過在export 將其變成環境變量即可
【】目前的shell中有多少的環境變量用:export(還有額外功能) 和 env查看
set: 可以觀察所有變量,含環境變量和自定義變量(PS1提示bash環境的字符)
4.Linux中工作排程
【】例行性(每隔一個週期就會發生)cron
【】突發性(一次發生完後就沒有了)at
at:需要atd服務的支持
|
crontab:可以用指令執行crontab 或者 編輯/etc/crontab(針對系統服務)
anacron處理非24小時開機的系統,偵測停機過程中沒有進行的crontab任務,完成一遍後就自動停止
5.別名的命名和取消
type 自定義命令名 ,查看自定義命令名是否被系統佔用
alias loo='cd /root;ls;cd /'
通過這種方式設置的別名命令只對當前登錄環境下有效,退出後重新登錄就無效了
【】 長期有效的方式:用戶只需要修改 ~/.bashrc文件, 加入你要設置的別名命令即可,執行source .bashrc 使配置生效
6.去掉文件由Windows轉換至Linux中出現^M的問題
對此的解決辦法就是通過字符替換,將^M換掉,具體方法如下:
利用vim打開文件,然後輸入vim 命令 %s/^M$//g,進行全文件查找替換。
注意:^ 使用ctrl+v 來輸入,M使用ctrl+m來輸入
7.Grep 的命令用法
https://blog.csdn.net/rockstar541/article/details/79174906
8.Awk 的命令用法
- 格式1:前置命令 | awk [選項] '[條件]{指令}'
- 格式2 : awk [選項] '[條件]{指令}' 文件
https://blog.csdn.net/qq_23587541/article/details/81392170
https://blog.csdn.net/weixin_42182501/article/details/88371494
9.查看當前登錄系統的用戶以及進程
who w users last...
https://blog.csdn.net/weixin_34040079/article/details/89868726
10.連接WiFi
sudo iwlist wlan0 scan列出所有可連接wifi
sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
在文件的底部添加下面內容:
network={
ssid="Your_wifi_ssif"
psk="Your_wifi_password"
}
ifconfig wlan0 down
ifconfig wlan0 up
11. find查找文件與exec的配合使用
exec選項後面跟隨着所要執行的命令或腳本,然後是一對兒 {},一個空格和一個\,最後是一個分號; cmd {} \;
pi@ubuntu:~$ find . -name '[0-9]\.txt' -exec rm {} \;
vi auto-del-7-days-ago-log.sh 編輯auto-del-7-days-ago-log.sh文件如下: #!/bin/sh find /opt/soft/log/ -mtime +7 -name "*.log" -exec rm -rf {} \; ok,保存退出(:wq)。 解析: find 後面緊跟的是要查找的目錄,. 表示當前目錄 -type f:指定查找對象爲文件 -name *.log:指定查找對象名稱以.log結尾 -mtime +7: 查找7天以前的老文件 -exec rm {} \; :執行刪除命令, 加入定時任務 #crontab -e 將auto-del-30-days-ago-log.sh執行腳本加入到系統計劃任務,到點自動執行 輸入: 10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1 |