• ベストアンサー

UNIXのコマンドが使えないんです

ls,pwd,cp,catなどのコマンドが一切使えず、入力すると "Commmand not found"と返されます。 唯一、cd だけが使えるのですが、どういうことなのかさっぱり分かりません。 最近、使い始めたばかりなので、詳しく教えてくれませんか。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.5

お使いの環境について、WindowsなのかUNIX系(AIX/BSD/HPUX/Linux/Solaris/...)なのかお書きになると良いかと。 cdはDOS/旧WindowsやNT系Windowsにもありますし。 ls,pwd,cp,catはUNIX系のシステムには標準で導入されているであろうコマンドですが、何らかの理由(操作の間違い含めて)で削除していたり、コマンド検索パスを変更して標準のコマンドが見つからない状態になっている場合には"Command not found"となりそうに思います。 UNIX系だとecho /* やらecho /*/cpやら echo /*/*/cpなどでコマンドの実行ファイルがあるか調べてフルパスで指定すればそのコマンドを実行する事ができそうです。 echo $PATHすれば環境変数PATHの値が確認できるかと思いますので設定すれば使えるようになると。 コマンドが使える状態でない場合(例えば/や/usrのファイルシステムがマウントできてない)や消えている場合には問題の状況に対処する必要があります。 Windows系のシステムはcdコマンドを標準で持っていますが、ls,pwd,cp,catコマンドは持っていませんので、それらのコマンドを入れてやるか標準のコマンドを使う必要があります。 ls→dir pwd→dir(dirでもカレントディレクトリの表示が行なわれたかと;cd使うと表示されますが、UNIX系と併用する場合にはユーザホームディレクトリに移動するUNIXとの違いで気持ち悪さを感じます) cp→copy,xcopy cat→type,copy UNIX互換コマンド入れる場合にはCygwinやSFUを探してみてください。

その他の回答 (4)

  • pakuti
  • ベストアンサー率50% (317/631)
回答No.4

chrootされてるんじゃないのでしょうか? 管理者にきいてみてください

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.3

コマンドには、bash等のシェルが処理する内部コマンドと、外部の実行ファイルを実行する外部コマンドがあります。 cdは内部コマンドで、ls,cp等は外部コマンドです。 外部コマンドを、そのファイルのありかを示すパスの指定無しで実行するには、環境変数PATHにあるディレクトリのどこかに実行ファイルが存在する必要があります。 ということで ・PATHが指定されていないか間違っていて、cpなどのありかが見付けられない ・実際に外部コマンド(の一部?)が存在しない のいずれかが可能性が高いと思われます。 これ以上はお使いのOS,シェル等の情報が無いと答えようがありません。 # pwdは内部コマンドだと思いましたが....

回答No.2

現象だけ見ると単純にPATHが通ってないだけのような気がします。 cd /bin などとしたあと、 ./ls で ls が起動しませんか? もし起動するようなら /bin にパスが通っていないだけ、ですよね。

  • logner
  • ベストアンサー率33% (540/1614)
回答No.1

どんOSを使っているのかはわかりませんが suでroot権限にしてもだめなんでしょうか。 OSくらい書いてもらわないと回答できないと思います。

関連するQ&A

  • UNIXのscriptコマンド

    scriptコマンドを使い自分のタイプしたものを記録しているんですが、そうすると.profileに保存してあるaliasが使えなくなります。例えば、.profileにalias -x lsl= 'ls -l'と保存してあり、scriptを使ってないときはlslとタイプしたらls -lと同じ動作をするけど、scriptコマンドを使ってる時はsh: lsl: not foundとでてしまいます。scriptコマンドを使うとなぜか、shモードに変わってしまうのが原因みたいです。これをscriptコマンドを使っている時でも、kshが使えるようにするにはどうしたらいいのでしょうか?.profileにそのように設定とかするのでしょうか、回答おねがいします。

  • コマンドの連続実行とコマンドのグループ化の違い

    Red Had系使用していますが、コマンドの連続実行とコマンドのグループ化の違いがいまひとつ分かりません。 たとえば、 cd /var;ls;pwd(コマンドの連続実行)と{ cd /var;ls; };pwd (コマンドのグループ化)の実行結果が同じであり、このコマンドのグループ化とは一体何の意味があるのですか? 返答の程よろしくお願い致します。

  • UNIXのコマンド

    こんにちは。 UNIXのコマンドに関してお聞きしたい事があります。 カンマ(;) パイプ(|) の使い方の違いについて教えてください。 2つともコマンドを連続で使えるようにするものだと思っているのですが。 例1) # cd /tmp ; pwd 例2) # more syslog.log | grep "error" 分かるか方いたら教えてください。

  • 特定のディレクトリでコマンドが実行出来ない。

    特定のディレクトリでコマンドが実行出来ない。 OSはRed Hat Enterprise Linux Server release 5.4です。 rootユーザで特定のディレクトリでlsコマンドを実行すると エラーが発生します。 カレントディレクトリが該当のディレクトリでない場合には 問題ありません。 また、そのディレクトリではwhoやdfコマンド等でも エラーとなってしまいます。 このような現象は、どのような原因が考えられるでしょうか? 以下は、全てrootユーザでの実行結果です。 # pwd /opt/oracle/app/product/11.2.0/dbhome_1/lib # ll stubs 合計 6404 -rwxr-xr-x 1 oracle oinstall 12121 2月 3 2009 ld-linux-2.3.4-stub.so -rwxr-xr-x 1 oracle oinstall 12121 2月 3 2009 ld-linux-x86-64.so.2 -rwxr-xr-x 1 oracle oinstall 4911 2月 3 2009 libBrokenLocale-2.3.4-stub.so -rwxr-xr-x 1 oracle oinstall 4911 2月 3 2009 libBrokenLocale.so -rwxr-xr-x 1 oracle oinstall 4911 2月 3 2009 libBrokenLocale.so.1  ・  ・  ・ # cd stubs # pwd /opt/oracle/app/product/11.2.0/dbhome_1/lib/stubs # ls ls: libc.so.6: version `GLIBC_2.4' not found (required by ls) ls: libc.so.6: version `GLIBC_2.4' not found (required by /lib64/libacl.so.1) ls: libc.so.6: version `GLIBC_2.4' not found (required by /lib64/libselinux.so.1) ls: libc.so.6: version `GLIBC_2.4' not found (required by /lib64/libattr.so.1) ls: libc.so.6: version `GLIBC_2.4' not found (required by /lib64/libsepol.so.1) # who who: libc.so.6: version `GLIBC_2.4' not found (required by who) # df df: libc.so.6: version `GLIBC_2.4' not found (required by df) 宜しくお願いいたします。

  • makeというコマンドがない

    vine2.1.5をインストールしたんですが、いつものようにtarを解凍してMakefileがあるディレクトリでmakeと打つと bash: make: command not found となってしまいます、lsなどの普通のコマンドは使えます、どういうことでしょうか?

  • コマンドがないと言われています。

    コマンドを打つと -bash: ****: command not found とエラーになります。 この場合、コマンドはOSをインストールした際のCDにあるとおもうのですが、どれをインストールしたらいいかとなどはどこで判断すればいいのでしょうか? 最小構成でインストールしたので、wgetやよく使うコマンドがなかったりと困っています。 OS:CentOS4.3

  • UNIXコマンドとWindowsコマンドの対応

    UNIXで取得した情報をWindowsの方でも取得できるようにしたいのですが、コマンドが分からず困っています。 UNIXコマンドに対応したWindowsコマンドを知りたいのですが、対応表が載っているサイトなど知りませんでしょうか? ちなみに知りたいコマンドは、UNIXコマンドで cat, grep, ls, netstat,  tail, tee, date, uname, awk, lanscan, ifconfig, ulimite, kmutune, kctune, lsdev, ntpq, patches, vgdisplay, strings, sar, du, dmeg, ipcs, ps vmstat, swapinfo, iostat, cron, crontab, captoinfo, chown, chgrp の以上です。 大変多くなっていて申し訳ないんですが、誰がご存知の方は教えて下さい。 Windowsの知識が乏しく、困っています。 どうか、よろしくお願いします。

  • UNIX: catコマンドで無限ループ???

    正確にはOS X 10.9.5のbashですが、UNIX一般の質問と思われるのでこのようなタイトルにしました。 catコマンドで、あるテキストファイルのあとに、同じテキストファイルをつくろうと思いましたが、無限ループになってしまい、巨大ファイルができてしまいます。 最初、このようにしてa.txtという1行のファイルを作りました。  [~]$ cat > a.txt  aaa それで、同じa.txtを  aaa  aaa という2行のファイルにしたいと思い、以下のようなコマンドを入力しました。 [~]$ cat a.txt >> a.txt 自分の目論見としては、a.txtの内容がa.txtに追加されるので、2行になるかと思いましたが、応答がなくなりました。 Ctrl+Cで停止し、a.txtの内容を見ると [~]$ cat a.txt aaa aaa aaa aaa aaa aaa ・・・・・・ と何千行も入っています。 ファイルのサイズはこれぐらいでした。 [~]$ ls -al a.txt -rw-r--r-- 1 TYWalker staff 16898724 9 22 12:57 a.txt これは、なぜこのような現象になるのでしょうか。 また、私が本来やろうとしたことを、簡単なコマンドで行うにはどうすればいいでしょうか。 よろしくお願いします。

  • tarもしくはcpioコマンドへ一定のファイルリストを送付するコマンドとは?

    ディレクトリからtarもしくはcpioコマンドへ、一定のファイルリストを最も効率よく送付するコマンドはどれ? という問題に対して 答えは ls と cat です。 問題文から「ファイルリスト」という言葉でlsコマンドは分かるのですがcatが何故答えなのかが分からない次第であります。 回答のほどよろしくお願い致します。

  • UNIX コマンドにおける # や円マークの意味

    お世話になっております。 Unix の表現上の#と¥(円)、セミコロンマークの意味と使い方を教えて下さい。 例 # find . -not -name xxxx -exec cp -v -p --parents {} /mnt/hda1/test/ \; 1.上記の時 # は root によるコマンドプロンプトなので打ち込む必要はないでよいでしょうか 2.上記で¥(円)マークと;(セミコロン)マークの意味は何でしょうか。   ;(セミコロン)マークは行の終わりとあったのですが、入力する必要がありますか。 3.以下で¥(円)マークは表現上2行になるから記述してあるだけで、   1行で入力できるなら¥マークを入力しなくてもよいのでしょうか   それともコマンドラインで2行になるコマンドなので入力してエンターを押し、   コンソールに2行だと認識させるべきものなのでしょうか    # nice -5 /usr/bin/pkg - 65536 > \    /mnt/hda1/hoge パイプやリダイレクトの意味と使い方は知っているのですが、 複合コマンドは今一つ分かりません。 教えて下さい。よろしくお願いします。