プロが教える店舗&オフィスのセキュリティ対策術

プログラムを動かしたいのに、ファイル名をコマンドとして受け取られてしまいます。対処法を教えてください。こういう機械をさわるのは初めてなので、分かりやすくお願いします。

「ラズベリーパイのコマンドについて」の質問画像

A 回答 (6件)

この絵を見るだけだと


カレントディレクトリにある test というファイルを (スーパーユーザーとして) 実行したい
という意図しか読み取れないし, そうだとしたら #3 で言われているように
「コマンドとして受け取られて正解」
としか言いようがないです.

ということで, 具体的になにがしたいんでしょうか? 「プログラムを動かしたい」の「プログラム」ってなんですか?
    • good
    • 0

カレントディレクトリにtest というファイルが無い


あるいは、
testというファイルに実行権限が着いていない
のどちらかです。

後者であれば実行権限が付いていないと言うことは、スクリプトファイルということでしょうか?
取りあえずは、シェルスクリプトなら、sudo sh ./test としてください。

「実行権限」について学んだ後は、実行権限を付けて sudo ./test で実行できるようにしてみましょう。


なお、testのようなシェルの組み込みコマンドと同名の自作コマンドは作らない方が良いです。
    • good
    • 0

たぶん、Raspberry Pi OS(Raspbian)を使っているのでしょうね。



こういった質問から入ってくるとなると、これから先もいろいろな操作について人に聞かないと何もできないのだと想像します。まずはLinuxの基礎的な操作方法についての情報源を知っておき、最低限の知識は頭に入れておいた方が理解が早いと思います。
https://www.debian.org/doc/manuals/debian-refere …

上記はDebian(Linuxの一種)のサイトですが、Raspberry Pi OSと中身はほぼ同じですので、ほとんど書いてある通りのことができると思います。他にも、「Linux」「初心者」みたいなキーワードで検索すると、ご自分に合った情報が得られるかもしれません。
    • good
    • 0

./test が実行プログラムなんですよね?


であれば、コマンドとして受け取られるて正解じゃないでしょうか?

コマンドの前についてる『./』の部分は、カレントディレクトリに存在しているプログラム(コマンド)を実行するという意味です。したがって、写真のようなコマンドを実行したい場合は、そのtestが存在しているディレクトリにcdコマンドで移動してから実行する必要があります。

なお、実行権が付いていないと実行できないので、『許可がありません』とか出たら chmod +x ./test とかして実行権限を付与してやれば実行できるかと思います。
    • good
    • 0

まず、testはそのディレクトりにあるんですか?


もしあるとすれば、その中身は何ですか?

例えば、これなら実行できるけど、
> cat test
#!/bin/sh
echo "hello"

> ./test
hello


存在しない適当なパスを設定したりすると、コマンドが見つからない、というエラーになります。
> cat test
#!/xxxxxxxxxxx/sh
echo "hello"

> ./test
./test: Command not found.
    • good
    • 0

sudoの後ろにスペース2つ無いですか?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!