シェル(tcsh)が動かなくなった原因と対処方法
- 初めてシェル(tcsh)に挑戦して、いろいろ試していました。tarで元ファイル名+日付の圧縮ファイルを書くあたりまで成功したのですが、なんかのはずみで全く動かなくなり困っています。
- 問題のシェルスクリプトはシンプルなものなので、実行してもエラーが発生しています。エラーメッセージは「'nknown option: `-」で、原因がわかりません。
- tcshはコマンドラインシェルであり、指定したオプションなしで実行するとエラーが発生します。tcshのオプションを正しく指定して実行してください。
- ベストアンサー
シェル(tcsh)が動かなくなりました。'nknown option: `-
初めてシェル(tcsh)に挑戦して、いろいろ試していました。 tar で 元ファイル名+日付の圧縮ファイルを書くあたりまで成功したのですが、なんかのはずみで全く動かなくなり困っています。 とりあえず、余分なものを全てなくしたシンプルなファイルに変えてみました。 ↓↓aaaa.tcshコード↓↓ #! /bin/tcsh -f date ↑↑aaaa.tcshコード↑↑ [root@aaaa aaaa]# ls -l -rwxrwxrwx 1 aaaa aaaa 23 Dec 16 11:51 aaaa.tcsh* これを実行しても同じエラーとなります。 [root@aaaa aaaa]# ./aaaa.tcsh* 'nknown option: `- Usage: tcsh [ -bcdefilmnqstvVxX ] [ argument ... ]. 何が原因でしょうか?
- webuser
- お礼率85% (1391/1635)
- その他(プログラミング・開発)
- 回答数1
- ありがとう数3
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
改行コードが、LF のみにすべきところ、CR LF になっています。cat -v aaaa.tcsh すると行末に ^M (CR)があるのがわかるでしょう。 以下のようにして削除してください。 tr -d '\015' < aaaa.tcsh > aaaa1.tcsh chmod +x aaaa1.tcsh ./aaaa1.tcsh
関連するQ&A
- cronから起動したシェルスクリプト内のtarが作動しない
シェルスクリプトの中で、フォルダを圧縮するため tar -cvzf ~ しています。このシェルをroot権限cronで毎日動かしたいのですが、試したところ、正常に圧縮されません。 名前だけは存在するのですが、ファイルサイズが20byteしかありません。 シェルスクリプトを手動で起動させた場合は正しく圧縮できます。圧縮されたファイルも1Gありました。 以前、どこかのMLにて同様の報告があり、root宛てのMailを確認するように、というアドバイスまでは乗っていたので、確認したところ、root宛てにメールが来ていませんでした。 対処方法をお教えください。
- ベストアンサー
- その他(OS)
- tcshなのにスクリプト構文中のsetenvが動かない。
シェルスクリプトを勉強しております。 testと名付けたファイルに スクリプトの構文の頭に#!/bin/tcshを記入せず setenv(csh系だけで動くコマンド)のみを記載して 実行権を与えて ./test と打つと etenv: command not found になってしまいます。 ここで、やりたいことは文頭にシェルを指定せずに 実行をすると、現在のtcsh上で実行されるはずなのに setenv: command not found になってしまうところに疑問がございます。 ログインシェルをtcshに変えたりも試してみても 疑問が解決しないので、なにかアドバイス等でもいただけないでしょうか。よろしくお願い致します。
- 締切済み
- その他([技術者向] コンピューター)
- なぜLinuxでKornシェルが使えるのでしょうか?
Linux初心者です。 シェルについてわからないことがあり、質問させていただきます。 Linux(Red Hatを使っています)の /bin/shと/bin/cshは、それぞれ/bin/bash、/bin/tcshのシンボリックリンクファイル、 なのに対して、なぜkshだけは/bin/kshそのままなのでしょうか? また、KornシェルはAT&T社が開発したものだそうですが、 これはLinuxで使う際にライセンスの問題に触れないのでしょうか? よろしくお願いいたします。
- ベストアンサー
- その他(OS)
- LinuxでKornシェルが使えるのは何故でしょうか。
Linux初心者です。 シェルについてわからないことがあり、質問させていただきます。 Linux(Red Hatを使っています)の /bin/shと/bin/cshは、それぞれ/bin/bash、/bin/tcshのシンボリックリンクファイル、 なのに対して、なぜkshだけは/bin/kshそのままなのでしょうか? また、KornシェルはAT&T社が開発したものだそうですが、 これはLinuxで使う際にライセンスの問題に触れないのでしょうか? よろしくお願いいたします。
- ベストアンサー
- Linux系OS
- zshで圧縮ファイルが赤く表示されません。
基本的なシェルの質問です。 tcshからzshに変更して色々.zshrcをいじくってみたんですが、tcshやbashではターミナル上で ls をしたらディレクトリは青、実行ファイルは緑、リンクは水、圧縮ファイルは赤、などなど色とりどりだったのですが、zshでは圧縮ファイルが赤く表示されません。ディレクトリは青く表示されるのでが。。。(そういえばjpgファイルとかに付いていた紫色も見当たらないです。) .zshrc 内で alias ls="ls -F --color=auto" と入力しているのですが、これ以外に何かしなくてはいけないのでしょうか?
- 締切済み
- Linux系OS
- シェルスクリプトの自動化で動作が変なのですが・・・
いつも大変お世話になります。 シェルスクリプトでtarコマンドを書き、このファイルをcrontabで自動化しております。 設定した時間になるとcrontabが実行され、ファイルが生成されるのですが、ファイル容量が少なく、tarコマンドがきちんと実行されていない様なのです。 あるディレクトリをまるごと圧縮しているのですが、容量は1GB程あり、これを tar czvf /directory_name1/file_name1.tar.gz /directory_name2/ というコマンドで圧縮しております。 直接このコマンドを実行するとちゃんと圧縮され、約940MBの容量になります。しかし、crontabでシェルスクリプトを実行すると45バイトのファイルが生成されて終ってしまいます。 なぜなのか、さっぱり原因が分かりません。 どなたかご教授の程、何卒、宜しくお願い致します。
- ベストアンサー
- その他([技術者向] コンピューター)
- tar zcf で Argument list too long のエラーが出る
aaa下の中身を圧縮して test.tar.gz を作り、これを bbb下に移動させるのを 以下のようにshで行っています。 #!/bin/bash cd /aaa tar zcf test.tar.gz * mv test.tar.gz /bbb これを、なにか圧縮コマンドのオプションを使って 圧縮元と圧縮ファイル作成先を指定して、1行で済ますことは出来ますか? tar zcf /bbb/test.tar.gz /aaa/* を試してみましたが、 -bash: /bin/tar: Argument list too long と出てしまいます。ご教授宜しく御願いいたします。
- 締切済み
- Linux系OS
- Kシェルに関する質問です!
Kシェルに関する質問です! あるディレクトリーに ファイルをFTP送信したいです。 送信するファイルは、日々作成される 圧縮ファイル(例.20100715_kkk.tar.Z)です。 しかし、ディレクトリーに格納できるのは、 容量の関係上、最新の圧縮ファイル5つまでです。 5つ以上になるとFTP送信するまえに 一番古い(圧縮ファイルの名前の日付で判断??作成日時で判断??)圧縮ファイルを削除して それからFTP送信をします。 こうすることで常に最新の5つをキープできます!! どのようなシェルを作ればいいですか? 削除の判断と実際の削除をどうすればいいのか 詳しく教えてください。
- 締切済み
- その他(プログラミング・開発)
- Kシェル 圧縮方法について
Kシェル 圧縮方法について /backup/db/dmpというディレクトリーがあります。 (dmp配下には色々ファイルが置かれています) このdmpディレクトリーを圧縮して その一つ上のdb配下に圧縮ファイルをおきたいです。 どうすれば圧縮できますか? 圧縮ファイル名は、 dsn333_yyyymmdd_tar.Zとしたいです。 (yyyymmddは、今の日付を入れたいです。(可変です))
- ベストアンサー
- その他(プログラミング・開発)
- scpコマンドの-pオプションについて
scpコマンドの-pオプションについて scpコマンド、(-p)オプションを付加しても ファイルのオーナ、グループが引き継がれません。 仕様なのでしょうか? ディストリビューションはRed Hat Enterprise Linux ESです。 よろしくお願いします。 ●コピー元 [root@moto tmp]# touch scp-test [root@moto tmp]# chown dbmgr:dba scp-test [root@moto tmp]# ls -l scp-test -rw-r--r-- 1 dbmgr dba 0 2月 16 15:01 scp-test [root@moto tmp]# chmod 777 scp-test [root@moto tmp]# ls -l scp-test -rwxrwxrwx 1 dbmgr dba 0 2月 16 15:01 scp-test [root@moto tmp]# [root@moto tmp]# scp -p scp-test saki:/tmp/ scp-test 100% 0 0.0KB/s --:-- ETA [root@moto tmp]# ●コピー先 [root@saki tmp]# ls -l scp-test -rwxrwxrwx 1 root root 0 2月 16 2005 scp-test [root@saki tmp]#
- ベストアンサー
- Linux系OS
お礼
ありがとうございます。 htmlやphpとは違いシェルはその辺シビアなのですね。 丁寧な解説に感謝しています。