當我還是Linux超級傻白的時候,需要拷貝一個很大的數據集,然后再拷貝源文件夾的后面跟了一個前傾斜杠,然后就發現居然拷貝的是整個文件夾里的東西,而不是文件夾本身。事兒倒是不大,我重新建一個文件夾,把這些東西挪進去就行了。后來,等我記住這一招后,發現有的時候居然也不是這樣。於是,做做實驗,干脆搞搞清楚。
兩個文件夾,各自內容如下:
使用命令cp –R dir_src/ dir_target后,結果如下:
重做一遍,使用cp –R dir_src dir_target后,結果如下:
於是我就記住了這個帶不帶前傾斜杠的區別。
后來,我特意使用這個斜杠方法拷貝的時候,居然栽了。
兩個文件夾各自內容如下:
使用帶斜杠的命令cp -R copytest_src/ copytest_target,結果如下:
看來不同的Linux發行版對這個cp命令帶不帶斜杠的執行是不一樣的,第一個例子是FreeBSD,第二個是CentOS7。
總之,往后別撿懶了,想拷貝目錄里面的內容而不是目錄本身,就用斜杠加個星號“cp –R src/* target”; 想拷貝目錄本身,就啥也不帶“cp –R src target”就行了。