!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
シェルスクリプトに関する総合スレッドです。
スレ立て時は以下の文を先頭行に加えて下さい。
後のつけ忘れ防止の為に複数行重ねて追加推奨
!extend:on:vvvvv:1000:512
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
前スレ
シェルスクリプト総合 その28
http://mevius.5ch.net/test/read.cgi/tech/1532397676/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured 0955デフォルトの名無しさん (ワッチョイ 3dc5-hALj)2019/01/26(土) 21:48:04.51ID:uSJt/X2/0
俺の方が先にfish言おうとしたんやけどね
0957デフォルトの名無しさん (ワッチョイ 3dc5-hALj)2019/01/26(土) 22:09:06.41ID:uSJt/X2/0
fish知名度高すぎやろwwww
fish って聞くと x68k の fish の方を連想してしまう
0959デフォルトの名無しさん (ワッチョイ 3dc5-hALj)2019/01/26(土) 22:38:03.41ID:uSJt/X2/0
なんやその受け身の人生アピールw
fish、イタリア語でPesciペッシ。
ジョジョで覚えたぞ!
0965デフォルトの名無しさん (ワッチョイ 415d-FWM4)2019/01/28(月) 23:54:39.66ID:WFNfoV5R0
あげ
0966デフォルトの名無しさん (ワッチョイ 415d-FWM4)2019/01/28(月) 23:55:04.01ID:WFNfoV5R0
シェルでコマンドの出力結果を(lsなど)データベースに入れたいのですが
どのようにすればいいかわかりますか?
できればその時のIpアドレスも一緒にいれればいいのですが
普通にテキストに入れるには
できないのでしょうか
ディレクトリも入れれば最高です
dbはsqlite3でフィールドはディレクトリ内容とディレクトリの2フィールドにいれたいのです
>>966
シェルスクリプト以前に、手では操作できるのかね? sqlite3 をコマンドとして使えるのか?
使えるのなら、そういうコマンドのオプションはあるのか?
sqlite3の説明を読めば?
基本的には、単純な空白区切り、CSV, JSON などでも、DB に入れられるはず
a,b
c,d
こういうCSV, TSV でも、DBに入る
0972デフォルトの名無しさん (ワッチョイ 4602-wD8z)2019/01/29(火) 02:49:31.61ID:PUnzDqON0
JSON なら、jq コマンドもある
そりゃ、Ruby などのプログラミング言語を使えば出来るけど、
コマンドだけで、もっと簡単にやりたいのでしょ?
シェル(スクリプト)っていうかシステムの話なんですが
FLOSSまたは無償で使えるOSで kshがデフォルトのログインシェルになってるものってありますか
AIXとかはそうっぽいのですが 買えません。
OpenBSD、Solaris。Solarisはらしい
くそ。ググっちまったw アニメ用語かよ。
OpenBSDにします。>>976 ありがとう! 読むと常にEOFを返すようなファイル(つまり/dev/nullとか)を
あえて「実行」した場合の挙動ってPOSIXやXPGで規定されてるっけ。
知ってる人いたら教えてほしい。
多分大抵の処理系でEACCESが返されて終了,という挙動をすると思うんだけど
怪しい……。
単なるEmpty Fileと、Executableでないファイルを無理やりと混ぜてなくない?
EACCESは後者だろう、中身に(読むと常にEOFを返す)関係なく。普通にそうならないの?
0983デフォルトの名無しさん (ワッチョイ df01-jOWJ)2019/02/05(火) 21:50:08.24ID:Ogivq0W50
初心者ながら普段のルーチンをshellscriptで解消したく
ソースコードを書いています。
一つつまづいてるので質問させてください。
catコマンドで特定のtxtファイル(シンボリックで作成したエイリアス)を
読み込むのですがNo such file or directoryと出力されます。
terminal上で同じコマンドを実行するとシンボリックリンク先の
txtファイルを読み込み、きちんと動作します。
何か考えられるミスはありますでしょうか?
catの前にpwdとかls -lとかls -lLとか調べることはいっぱいある
>>983
うーん。初心者という言葉をそのまま受け取るなら
フルパス・もしくはそのスクリプトからきちんと認識できる位置の相対パス
で指定してる?
ターミナルの上で
$ cd /tmp
として/tmpディレクトリに移動してからそのコマンドを打ってみるとどうなる?
もう一つは「No such file or directory」がcatの出力でない可能性
ファイル自身をコマンドとして認識される位置に持ってきてない? 0988デフォルトの名無しさん (アウアウウー Saa3-d53M)2019/02/06(水) 15:26:28.18ID:Zn5BTEOaa
>>983
cat の打ち間違えやスペースが全角。
ファイル名の文字コード間違い。全角半角だけでなく見た目が同じだがキリル文字の方を使ってるみたいな間違い。
Unicode特有の問題で日本語の平仮名の濁点や半濁点の文字が2文字になっているというのもあるかも知れない。これはよくMacOSとWindows間のファイルをやり取りすると起こる。
画面上は全く同じに見えるファイルが同じディレクトリに2つ並んだりする。しかし文字コードを調べると違っている。 0989デフォルトの名無しさん (ワッチョイ df01-PoJv)2019/02/06(水) 21:18:32.76ID:gnsmOIbq0
レスを頂きありがとうございます。
983です。
readlinkは事前に使用して検証してたのですが、
問題なくシンボリック先を辿れていました。
カレントディレクトリが/tmpの状態でコマンドで
打つとこれも問題なく動作します。
文字もシンプルな英語しか使用してないので
どこが間違っているのかわかりません。
教えて頂いたデバッグ方法を参考にもう少し探ってみます。
シェルスクリプト難し過ぎワロタw
もうpythonでいいよ
シェルスクリプトがややこしいから、
vagrant, chef, Homebrew などは皆、Ruby で作られている
その理屈はおかしい
Rubyがややこしいから、
ansibleはPythonで作られてる
と言えてしまう
> シェルスクリプトがややこしいから、
>
> vagrant, chef, Homebrew などは皆、Ruby で作られている
>>992はなぜこんな言い方をしてしまったのか?
それは、vagrant, chef, Homebrew などは皆、
本来はシェルスクリプトで作るべきものなんだ
と思っているからなのだろう。 >>993
それは正しいだろ
RubyDSLがややこしいから、ansibleはYAMLを採用した、もまた正しい その理屈でいうと、rbenvはRubyがややこしいから
シェルスクリプトを使ったということになる
「モジュールが対応してなくてYAMLで設定できないんだけど?」
ansible「シェルスクリプトも使えるで」
なら最初からシェルスクリプトにしろよ(笑)
シェルスクリプト、マヂややこしい…。すぐ頭から抜ける。
もうpythonでいいよ。
10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 138日 22時間 51分 54秒
10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php