1

txtファイル「usernum.txt」の内容を取得し、その内容を取得し、その番号に1つ追加して、現在の番号を新しい番号に置き換えようとしています。これが私がこれまでに持っているものです

#!/bin/sh
ID=0
cat ''$pwd'usernum.txt' >> $ID
count1=1
IDB=$(($ID+$count1))
rm "usernum.txt"
touch "usernum.txt"
echo $IDB >> usernum.txt

実行されますが、ファイルを開いても同じままです。何か案は?ありがとう、マイク

4

1 に答える 1

3

catを使用するID代わりに、からの出力をに保存する必要があります>>。あなたがしている方法では、常に「0」という名前のファイルに追加します。cat useの出力を保存するには:

ID=$( cat 'usernum.txt' )

また、「pwd」は必要ないため削除しました。また、一重引用符でエスケープされます。

編集:これは完全な実例です。usernum.txtファイルがない場合、これはいくつかのエラー(catおよびrmが失敗する)を出力しますが、それでも機能する(つまり、ファイルに1を出力する)ことに注意してください。これらのエラーを回避するには、ファイルが存在するかどうかを確認するためのチェックを実行する必要があります。

ID=$( cat 'usernum.txt' )
count1=1
IDB=$(($ID+$count1))
rm "usernum.txt"
touch "usernum.txt"
echo $IDB >> usernum.txt
于 2012-09-20T07:53:19.427 に答える