shell指令碼的坑坑窪窪

2021-09-28 17:03:20 字數 2788 閱讀 3878

1、在shell中呼叫read

#!/usr/bash

read -t 30 -p 「提示資訊」 變數名;

# if 語句用法

if[ $變數名 ]

;then

變數值存在執行的語句

else

變數值不存在執行的語句

fi# 判斷為空if[

! -n "$name"];

then

name=

"opm"

else

name=

$name

fi

2、在shell中呼叫scp / ssh
#!/usr/bash

scp$path

"$@$":~/tar_install.tar.gz

# " "中的內容表示在ssh中執行的shell命令

ssh$user@

$ip"cd ~ && tar -zxvf tar_install.tar.gz && cd ~/tar_install && sh ./project_deployment.sh"

3、shell檔案後的傳引數
#!/bin/bash

echo

"指令碼名$0"

echo

"第乙個引數$1"

echo

"第二個引數$2"

echo

"第三個引數$3"

echo

"第四個引數$4"

……echo

"第十個引數$10"

echo

"第十個引數$"

# ⚠️ $0獲取到的是指令碼路徑以及指令碼名

# 取不到的引數,不顯示

4、shell中呼叫sed(替換指定檔案中的內容)
#!/usr/bash

# 不傳引數

sed -i "s![被替換的字串]![替換成的字串]"

[目標檔案路徑]

;# 傳引數[⚠️ 引數放在''中,才有意義,如外層包的是"", 同樣也沒有意義]

sed -i 's!server_name 117.50.90.182;!server_name '

$';!g' /usr/local/nginx/conf/nginx.conf

# echo

echo

'你配置的'

$

5、shell中呼叫執行mysql
#!/usr/bash

# mysql 修改密碼

mysql -uroot -p1232313 <<

eof use mysql;

update user set password_expired='n' where user='root';

update mysql.user set authentication_string=password('密碼') where user='root';

flush privileges;

eof# mysql 新增使用者

mysql -uroot -pxeqy5kbskmshemt <<

eof grant all privileges on *.* to 'root'@'%' identified by 'root';

create database oms_2_data charset=utf8;

create user 'oms'@'%' identified by 'vskyslv2qq.';

grant all privileges on oms_2_data.* to 'oms'@'%' identified by 'vskyslv2qq.' with grant option;

flush privileges;

eof# mysql 插入資料

mysql -u[user] -p[password] 資料庫名 -e "insert into 表名 values ('1', '管理員', 100), ('11', '運營管理員', 51), ('12', '運營專員', 41), ('21', '測試管理員', 71), ('22', '測試專員', 45), ('31', '策劃管理員', 81), ('32', '策劃專員', 47), ('41', '程式管理員', 91), ('42', '程式專員', 49), ('51', '美術管理員', 61), ('52', '美術專員', 43), ('88', '版主', 31), ('99', '僅投票', 21), ('100', '其它', 31), ('101', '超級管理員', 103)"

;

6、shell中執行向檔案追加寫入內容
#!/usr/bash

# >> 表示在後面寫入

echo

'path=$path:/usr/local/rabbitmq_server-3.7.8/sbin'

>> /etc/profile;

# > 表示在覆蓋檔案寫入

7、shell中source__python的虛擬環境
#!/usr/bash

source /data/project/oms/venv/bin/activate && python /data/project/oms/create_super_adminuser.py;

8、ssh免密登陸目標伺服器
cat ~/.ssh/id_rsa.pub |

ssh[目標機器登陸使用者]@[目標機器ip]

"mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

關於poi word 文件生成的那些坑坑窪窪

近期產品提了乙個需求,要求我們將查詢出來的資料以 的形式儲存在excel和word文件中,excel的單元格有強大的適應性和擴充套件性,基本無難度,但是word,嗯,要相容wps word和microsoft word,一言難盡。匯出word檔案 public static xwpfdocument...

走在WCF學習的路上 遇到的坑坑窪窪

1.有3個方法可以解決,參考這個帖子 簡單的就是你找到host的編譯生成的.exe檔案,點選執行,再新增服務引用。2.這說明埠已經被占用了,上面配置終結點位址,和下面 設定的終結點作用上一樣,你使用一種方式就可以了,不需要這個配置了以後,裡再次設定。這回導致一樣的終結點重複的問題。引用襪子不回頭 還...

JPA手記 記下JPA使用過程中的坑坑窪窪

springboot jpa!得益於springboot的簡單配置,jpa的啟用及其簡便,甚至都不用接觸到entitymanager。新增相關依賴,則springboot會猜測你需要的配置,也就自然開啟了對jpa的支援。再得益於jpa的介面方法名到sql語句的對映,終於可以不用寫sql了。jpa讓查...