shell腳本cp文件
Ⅰ 如何使用SHELL腳本批量CP文件並改成對應的文件名
例如將test下的文件CP到record下面,並改成對應的文件名:
#!/bin/bash
foriin{1..10}
do
destination=`sed-n"$i,1p"user.txt|awk'{print$2}'`
source=`sed-n"$i,1p"user.txt|awk'{print$1}'`
#echo$dir
cd$dir
cp-rvp$source$destination
done
Ⅱ shell腳本cp沒效果
你的代碼沒有問題的,是cp命令沒有找不到。
問題原因,應該是你的環境變數PATH出錯了。你執行下面命令再試下。
下面命令把系統命令常用路徑添加到環境變數中(這是暫時修改,退出登錄會失效。想永久生效需要在/etc/profile文件中設置PATH變數)
exportPATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:$PATH"
Ⅲ 如何使用shell腳本生成一個幾百行內容相同的文本

是你需要的樣子嗎? 這邊你可以改變seq 1 5來控制多少行 然後把echo列印的內容追加到文本中就好 > file.txt
Ⅳ 本人有linux腳本,含有三個cp命令,每復制一條時文件夾多了一個空格,這個怎麼解決
能說一下文件夾多空格是什麼意思?是文件夾名字多空格?是不是自己多打了一個空格?可以嘗試手動輸入,不要用復制黏貼
Ⅳ 你好,請問在SHELL編程中,要掃描指定目錄中的文件,有普通文件的話就拷貝到其他目錄,這個命令是怎樣的。
假設腳本名稱為 Files.sh,內容為:
#/bin/sh
ls -l $1| awk 'substr($0,0,1)=="-"{system("cp "$NF" '$2'")}'
exit 0
給腳本賦予可執行許可權:
chmod a+x ./Files.sh
然後運行:
Files.sh 目錄1 目錄2
(其中,目錄1是指定要掃描的目錄,目錄2為要拷貝到的目錄。 )
Ⅵ 關於linux shell編程,alias rm='cp $@ ~/backup; rm $@'
這樣做確實是不行,第一個語句無法取得參數。我也
不知道為什麼
不能這么做。但我可以給你一個替代方法,即定義一個函數,將參數作為函數的參數:
alias saferm='saferm(){cp $@ ~/backup; rm $@;};saferm $@'
saferm abc.txt 這樣你寫多少個命令都沒問題~~~
不過如果命令比較復雜,建議寫出
shell腳本
#! /bin/sh
# /home/yourname/saferm
cp $@ ~/backup
rm $@然後建立一個alias
chmod +x /home/yourname/saferm
alias saferm=/home/yourname/saferm也可以直接放在系統路徑下~
