1. 程式人生 > 實用技巧 >YOLOv4: Darknet 如何於 Docker 編譯,及訓練 COCO 子集

YOLOv4: Darknet 如何於 Docker 編譯,及訓練 COCO 子集

一、bash基本使用

1. 定義變數

[root@localhost run]# var=123        # 等號周圍不能有空格
[root@localhost run]# echo $var # echo 輸出變數,變數使用$取值
123

2. 變數輸出

方法1:echo

# 輸出字串

[root@localhost run]# varName=root
[root@localhost run]# echo $varName

root

#輸出命令執行結果

[root@localhost run]# echo $(pwd)
/mnt/run

[root@localhost run]# var=`pwd`

/mnt/run

方法2:printf

[root@localhost run]# printf "%s\n" $varName
root

3. 刪除變數unset

[root@localhost run]# var=123
[root@localhost run]# echo $var
123
[root@localhost run]# unset var        # 刪除後輸出變數為空
[root@localhost run]# echo $var

[root@localhost run]#

4. 檢查變數是否存在

[root@localhost run]# var=123
[root@localhost run]# echo ${var? Error:Not defined} # 變數存在,則輸出變數 123 [root@localhost run]# unset var [root@localhost run]# echo ${var? Error:Not defined} # 變數不存在,輸出列印語句 -bash: var: Error:Not defined [root@localhost run]#

二、進階

1. history命令獲取執行命令歷史

[root@localhost run]# history          # 打印出前面執行的1000條命令
[root@localhost run]# history 10 # 列印前面10條命令,history n 表示列印前n條命令


[root@localhost run]# history 1
1043 history 1
[root@localhost run]# !! # 執行上一條命令,ctrl+p 同樣效果
history 1
1043 history 1
[root@localhost run]#

2. shell擴充套件

  ①大括號擴充套件

[root@localhost run]# echo a{b,c,d}e
abe ace ade
[root@localhost run]# echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
[root@localhost run]# echo {z..a}
z y x w v u t s r q p o n m l k j i h g f e d c b a
[root@localhost run]# echo {a..c}{1..3}
a1 a2 a3 b1 b2 b3 c1 c2 c3