0

私は Unix シェル スクリプトの初心者であり、個々のコマンドがコマンド ラインで実行されるのに、なぜこれが機能しないのか理解できません。明らかな場合はお詫び申し上げます。

いくつかの Unix コマンドを使用してスクリプトを作成し、Putty で sh script.sh を使用してそれを呼び出そうとしています。以下にサンプルを示します。

echo Carrying out compression
gzip -c file_1.csv > file_1.csv.gz
gzip -c file_2.csv > file_2.csv.gz
gzip -c file_3.csv > file_3.csv.gz

指定された名前の出力を生成するのではなく、非常に奇妙な名前のファイルを取得しています。FTY4WG~7. それは、正しく名前が付けられた最後のものを除いてです。

各行の後にスペースを入れると機能しますが、エラーメッセージが表示されます: : No such file or directory

実際、私はたくさんのことをしようとしています (CSV をつなぎ合わせたり、圧縮したりします) が、この単純なコマンドをクラックできれば、おそらくすべて解決できるでしょう。

ご協力いただきありがとうございます!

ベン

4

1 に答える 1

1

スクリプトの先頭にこの行があることを確認してください

#!/bin/bash

このコマンドを実行します

dos2unix <yourfilename>

今これを行う

chmod u+x <urfilename>

これでいいかも。

于 2013-03-06T18:53:45.560 に答える