前提・実現したいこと
使用環境:macOS Big Sur 11.5.2を使っています。
Web系言語を少しいじれるくらいの初心者です。
自動化したい作業があり、慣れないシェルスクリプトで〇〇.sh
ファイルを作りました。
このファイルは、ターミナルで実行すれば問題なく動きます。
(zshへ移行せず、いま使っているのはbashです。)
このファイルの拡張子を〇〇.command
に変えました。
ダブルクリックで自動実行できるはずだと思っていたのですがうまくいきません。
原因は何だと考えられますか?
うまくいかせるにはどうしたらいいでしょうか。
すみませんが、どなたかわかる方おられましたらよろしくお願いします。
発生している問題・エラーメッセージ
〇〇.sh
ファイルの拡張子を〇〇.command
と書き換えたのに、シェルを自動実行できません。
〇〇.commandファイルが開かれているのは確実なのですが、
~ $
とホームディレクトリで待ちの状態になってしまっています。
もちろん、そんなコードは書いていません。
そして❌ボタンで閉じようとすると、「このウィンドウで実行中のプロセスを終了しますか?」という表示が出ます。
一応何かのプロセスが実行中なようです。
試したこと
①シェバンを#!/bin/bash
ではなく、ターミナルを開けたらデフォルトで使われている#!usr/local/bin/bash
に変えてみました。→効果なし
②cd `dirname $0`
は書いていますが、そもそもcd
が機能していないようです。
③試しにecho 'test'
と文字列「test」だけを出力させる.commandファイルをつくってみたが、同じ結果(~ $
で待ち)になりました。
④以前(1年半くらい前)に作って動いていた、データベースのバックアップを自動実行する.commandファイルがあります。
これも今回久しぶりに実行してみたら同じ結果(~ $
で待ち)になってしまい、いつの間にか実行できなくなっていたことが判明しました。
これらのことから、コードの中身が原因ではないような気がします。
補足情報(FW/ツールのバージョンなど)
usr/local/bin/bashのバージョンは5.3.1です。
/bin/bash に関しては分かりません。
8/26 追記
作成した.commandファイルには、パーミッション755や777を与えています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。