HP-UNIX
シェルで指定された引数の桁数のチェックや入力値のチェックを
行いたいと思っております。
自分なりに調べた所、awkコマンドを使用して、lengthや正規表現
でチェックできそうなのですが、シェルで指定された引数をどの
ようにしてチェックすればよいのかがわかりません。
例)aaa.sh 引数1 引数2
⇒aaa.shの中で、$@等で上記のチェックを行う???
イメージとしては、
・if (length($1) == 10)
・$1!~/[a-zA-Z0-9]/
でも、aaa.shの中で、awkの使用方法がわかりません。
awkを使用する以上、ls -l | awk ~~~ のように、
一度、引数をファイルに出力してから、grepとパイプ機能を使用
する?しか方法はないでしょうか。
(実行環境で、パーミッションの設定でシェルを実行できない
為、上記の方法を試すには到っていません・・・パーミッションについて
も、まだ理解が乏しい為。)
シェルスクリプトを触り出して、まだ間もない事もあり、可能な
のかどうかも判断できない状況ですが、ご存知の方がいらっしゃ
いましたら、ご教授頂ければと思います。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
書籍などで調べたのでしょうか?
awkならネットで調べて試してみる事を繰り返した方が近道ですがねぇ。
パイプなどを使った方が簡単で便利だと思いますけど。
echo $1 | awk "{~~~
で引数を渡すだけだし。
それよりもシェルが試せない方の解決が先じゃない?
chmod +x aaa.sh で実行権を与えていないって話でしょうか?
シェルの先頭には、#!/bin/sh などシェルのパスをかいています?
実行は、
./aaa.sh 引数1 引数2
ですよね?
因みにawkもスクリプト言語なのでawkのスクリプトを書いてそれだけでチェックする事も可能ですよ。
アークのヘルプ(awk --help)で表示される
awk '{ sum += $1 }; END { print sum }'の''内をスクリプトで記述する形です。
簡単なものだとスクリプトファイルを書かなくても記述できるのが簡単・便利なアークのよさですけどね。
この回答への補足
ありがとうございます。
実行権なんですが、
シェルの先頭には、シェルのパスは記述しております。
又、実行権も当初なかった為、chmod +x で追加致しました。
実行時は、./aaa.sh 引数1 引数2 で実行しております。
その際に、シェルが存在しませんという旨のメッセージが出ました。
(実行権を付与する前は、パーミッションが~~~と表示されておりました。)
未だに、所有者やグループと言った概念がよくわかっていないのです
が、シェルファイルに実行権限(x)を付与すれば実行出来ると思って
いるのですが、間違いでしょうか。
(所有者やグループと実行権限は全く別の概念?)
又、桁数チェックについては、他の質問を参考に解決しそうです。
(自宅マシンには、UNIXがないので、まだ実際には試しておりませんが・・・)
LEN=`expr "$1" : '.*'`
if [ $LEN -ne 桁数 ] then
#エラー
fi
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux Linuxについて質問です。 以下のhistoryの出力結果から、sedコマンドのファイル名tmp1 1 2023/02/03 20:11
- UNIX・Linux bash環境でのエラー対応をお願い致します。 1 2022/11/26 17:41
- UNIX・Linux Linuxのbash環境下です。 1 2022/11/27 12:31
- その他(プログラミング・Web制作) Pythonの作業環境・作業フォルダの迅速な設定・指定方法 3 2022/04/01 07:55
- その他(プログラミング・Web制作) Linuxについて質問です。 引数に指定されたアクセスログのファイルからアクセス数が多い順に上位3つ 1 2023/02/03 03:46
- UNIX・Linux Linuxについて質問です。 シェルスクリプト名をfind.shとして、以下の条件をすべて満たすファ 1 2023/02/03 03:50
- その他(社会・学校・職場) 業務内容についてどう思いますか? 私は客先の仕事を下請けとして行うという仕事をしていますが、(客先の 2 2022/05/04 16:17
- その他(パソコン・スマホ・電化製品) ウィルスバスターモバイルについて。 iphone12 miniで、ウィルスバスターモバイルを使ってい 2 2022/07/10 12:59
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- Excel(エクセル) 見えているセルの数字だけの合計を計算させたい 4 2022/09/11 17:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[Linux初心者]Ubuntu22.04.3LTS...
-
自作のウェブサイトを友人に見...
-
bashでシングルクォート内の変...
-
Ubuntu系とCentOS系の違いはな...
-
ubuntuで デイスク/deb/loopと...
-
AWSでSSH接続をしたいのですが...
-
ubuntu(linux)のシャットダウン...
-
Ubuntu on Xorgのログインについて
-
linuxサーバーのキャッシュをク...
-
ssl_error_logのエラー内容(AH...
-
yumやaptで依存関係で自動的に...
-
windows10を使っています。 wsl...
-
ubuntuのシャットダウンが進ま...
-
ホストオンリーアダプタで接続...
-
UNIXのマニュアルを日本語訳す...
-
初期のSurface Goにubuntuをデ...
-
Ubuntuのアプリ版?が起動しません
-
Ubuntuで数字だけのユーザーア...
-
ファイルデータでネットワーク...
-
サーバー間のデータコピー(デ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ubuntu(linux)のシャットダウン...
-
bashでシングルクォート内の変...
-
ubuntuのシャットダウンが進ま...
-
Windowsのパソコンを使って仮想...
-
ubuntuで デイスク/deb/loopと...
-
AWSでSSH接続をしたいのですが...
-
Ubuntu on Xorgのログインについて
-
LinuxのノートパソコンでDVDコ...
-
linuxサーバーのキャッシュをク...
-
Postfixでドコモメールに送信す...
-
Windowsのローカルディレクトリ...
-
tarで纏める際に、複数場外した...
-
Linux のシェルスクリプトの強...
-
Linux Mint 日本語入力できなく...
-
ホストオンリーアダプタで接続...
-
ubuntuのサーバー(virtual box)...
-
VirtualBox ゲストOSにPC内蔵HD...
-
shellscript内のコマンドを、su...
-
Linux Ubuntu22.4の起動時エラ...
-
Ubuntu でinvalid filenameとな...
おすすめ情報