X



シェルスクリプト総合 その34

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2020/08/21(金) 15:17:55.64ID:mArnj/tT
シェルスクリプトに関する総合スレッドです。

全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。

シェルスクリプト総合 その33
https://mevius.5ch.net/test/read.cgi/tech/1584893550/
0439デフォルトの名無しさん
垢版 |
2020/09/23(水) 16:16:36.13ID:9Qi89m1Q
> ファイルの情報に関してはtestコマンドの方が一発で分かる
testでわかるのは、自分が何をできるか?(書き込み等)だけ
他のユーザーのことはわからない
0440デフォルトの名無しさん
垢版 |
2020/09/23(水) 16:18:45.57ID:9Qi89m1Q
.sshディレクトリは自分は読み書きできるが
他の人は読み書きできてはいけない
ということを、testコマンドでは確認することができない
0444デフォルトの名無しさん
垢版 |
2020/09/23(水) 16:47:01.90ID:ekwcF8Ey
>>434
> testコマンドの場合はtest -e && test -d
ちなみに、test -eはイランで。
-dに含まれとる。-fとかも同様。
0447デフォルトの名無しさん
垢版 |
2020/09/23(水) 17:12:18.91ID:9Qi89m1Q
>>446
ちゃんと確認してないけどこんな感じ

case $(ls -dl -- "$file") in
????------*) echo 他の人は読み書きできない
esac
0449デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:03:55.60ID:ORLEAcPg
自分で読み書きできるのかだったらtestの方が簡単だわな
rootで他のユーザではだったら素直にsudo使えばだしな、自分でごちゃごちゃ書く必要もなく
0451デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:17:09.45ID:9Qi89m1Q
>>449
testではだめな場合があるって話をしてるのに、話を元に戻すな

それからパーミッションと実際に読み書きできるかは厳密には異なる
お前が持ってきた、そのrootがその一例だな

所有者rootでパーミッションが000。パーミッションを見れば
読み書きできないが、実際にはrootで読み書きできる
0452デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:22:23.40ID:9Qi89m1Q
>>450
lsの出力は(基本的なものは)POSIXで決まってるはずだがSELinuxはドットがつくんか?
SELinuxがPOSIXを歪めてるってことになるんだがそれは本当なのか?
画面でそう出力されているからって、シェルスクリプト(出力先がttyでないとき)でも同じとは限らんぞ

例えばGNUのlsはファイル名に改行などが含まれている時、
画面に表示した時はエスケープされていてこれはPOSIXの仕様を逸脱してる。
しかし出力がttyでないときはPOSIX準拠の動作をするので互換性は保たれている。

まあ本当にドットが付いていたりするなら、それを取り除けばいいだけだが
0453デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:24:51.56ID:9Qi89m1Q
>>450
軽くググったがドットがつくのは頭じゃなくて後ろじゃないのか?
パーミッションの後ろであれば、追加で何かをくっつけてもPOSIX的にはOK
macOSでも何かくっついてたはずだな
それもちゃんと考慮しての ????------*) アスタリスクだ
0454デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:29:08.48ID:ORLEAcPg
>>451
なに当たり前のこと言っているのだか
rootも自分が読み書きできるのかなんだから当然だろ、そう言う権限があるんだから
なに必要もないことしてんだかなってとこだな
0455デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:30:24.99ID:9Qi89m1Q
>>454
人の話聞こうか?
.sshのように、他の人が読み書きできないことを
チェックするときにtestは使えないって話をしてるの
だから戻すなと言ってるの
0456デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:31:28.98ID:9Qi89m1Q
testでできることの話はもうしてないの。終わった話なの。
今はtestでできないことの話をしてるの。だから話を戻すなと言ってるの。
0457デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:36:03.39ID:ORLEAcPg
>>455
ちゃんとレスを読もうか?>>449って書いてるだろ
rootで他のユーザでは

rootで他のユーザの場合ではをチェックする場合では
な。「rootで」って付けたのは余分だがそんなのするのはrootでしかないだろうという
0458デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:46:19.51ID:9Qi89m1Q
>>457
あ、もしかしてお前、「自分以外には見れない」ことを
(シェルスクリプトで)チェックすることはありえないと思ってんの?w
sshがやってるんですが?
0459デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:52:36.32ID:ORLEAcPg
なに言ってるの?sshのシェルスクリプトでやってるってどのシェルスクリプト?
0460デフォルトの名無しさん
垢版 |
2020/09/23(水) 19:55:44.26ID:9Qi89m1Q
>>459
どうもお前は話が理解できないようだから
数字で答えてくれ

あるファイルが「自分以外のユーザーから読み書きできるかどうか」を
確認したいことは

1. ありえる
2. ありえない
3. 想像力がない
4. 言ってることが難しすぎてわからない(笑)

レスするのは数字だけな。それ以外の言葉はいらんから(全部言い訳としてみなす)
0461デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:04:40.84ID:ORLEAcPg
はあ...
答えるのもアホくさいが、>>449って書いてんだから 1 に決まってるだろ

>>449、また、読めなさそうなお前のために>>457って書いてんだろに
読めればそんなアホくさい問題を出さないだろうに(わざわざそんな何行もかけてw)

実はお前のなんか知らんが偉そうなw自説はダメなはずだぞ。なんででしょう?

(sshのシェルスクリプトでやってるってどのシェルスクリプト?ってのも答えてな、そのアホな質問にこんだけ答えてやったんだからw)>>459
>sshのシェルスクリプトでやってるってどのシェルスクリプト?

なんか制限を勝手に付けたが、いつもの自分の都合の良いように反論押さえ込むだけの馬鹿な言葉なので無視
0462デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:09:20.35ID:ORLEAcPg
ああ、
あるユーザ=管理者権限がある=sudoが使える

一般ユーザはそんなことする必要もないしするべきでもないから、2 な
0463デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:16:59.78ID:9Qi89m1Q
>>461
言い訳するな。数字だけ答えろ

「自分以外のユーザーから読み書きできるかどうか」をtestでは調べることができない

1. YES
2. NO
0464デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:18:16.77ID:9Qi89m1Q
> 一般ユーザはそんなことする必要もないしするべきでもないから、2 な

うわーw

一般ユーザーが、自分以外はファイルにアクセスできないような
パーミッションになってるかを確認する必要はないって
いっちゃったよこいつwww
0465デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:20:56.17ID:ORLEAcPg
答えたぞ。読めない読まないのは知らない
質問するのはいいが馬鹿な偉そうな素人のような態度での質問のしかたは辞めなさいw

言い訳でもなんでもいいから俺の質問にも応えてねw
sshのシェルスクリプトでやってるってどのシェルスクリプト?
実はお前のなんか知らんが偉そうなw自説はダメなはずだぞ。なんででしょう?
0466デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:22:26.95ID:ORLEAcPg
>>464
逆にある場合を具体的に言ってみてほしいな
俺の言うことはあり得ないとそんなアホのように馬鹿にした表現するなら
0467デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:22:42.48ID:9Qi89m1Q
> sshのシェルスクリプトでやってるってどのシェルスクリプト?

sshのシェルスクリプトでやってるなんて一言も言っていません。
自分の都合のいいように読み替えるのはやめろ
0468デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:24:26.32ID:9Qi89m1Q
>>466
> 逆にある場合を具体的に言ってみてほしいな

こいつヤバイなぁw

ファイルに他人には秘密にして置かなければいけないような
パスワード等を保存したとしても、パーミッションが
問題ないかを確認したりしないって言っちゃってるよw

ドコモ口座とかこういうやつが原因なんだろうな
0469デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:31:55.84ID:ORLEAcPg
>>467
なんだ
>あ、もしかしてお前、「自分以外には見れない」ことを
>(シェルスクリプトで)チェックすることはありえないと思ってんの?w
>sshがやってるんですが?
って、括弧付きでわざわざ シェルスクリプト って書いていて、続いて、sshって書いてるから、そんなのあるかと思った
sshが〜なんて、sshって別次元のある意味当たり前の話だからな

sshも作るときはパーミッションを設定するが、読み書きは読み書きできるかどうか(単なるopenできるかどうか)じゃないのかなあ、知らんけど

ともあれ、すっきりしたwから、どうも
0470デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:34:44.76ID:ORLEAcPg
>>468
>ファイルに他人には秘密にして置かなければいけないような
>パスワード等を保存したとしても、パーミッションが
>問題ないかを確認したりしないって言っちゃってるよw

イミフすぎw
何でそれを管理者権限もない一般ユーザが他のユーザのそれをしなきゃならん??のだか?
何言ってるの??

なんか管理がむちゃくちゃなシステムを作ってそうなお前がやりそうだけどw
0471デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:38:37.12ID:9Qi89m1Q
> 何でそれを管理者権限もない一般ユーザが他のユーザのそれをしなきゃならん??のだか?

こいつ理解力ゼロじゃねw
管理者(root)の話を持ってきたのはこいつだけど、
俺の話には管理者という登場人物は出てきていない

くり返し言うね。

「自分(=一般ユーザー)以外のユーザーから読み書きできるかどうか」を
(自分=一般ユーザーが)testでは調べることができない

この話をしていたという理解力はありますか?
0472デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:39:34.10ID:9Qi89m1Q
もちろん俺は
「管理者権限もない一般ユーザが他のユーザのそれをしなきゃならん」
などと一言も言ってません。

こいつはいつも、自分の思い込みで発言を改ざんしています。
0473デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:43:15.10ID:ORLEAcPg
だから既に答えたことを質問すんなって
ちゃんと管理してる(てかいたって当たり前の)環境では、「必要ない/すんな/あり得ない」よ、当たり前に

同じ質問繰り返してばかり堂々めぐりではなくて「逆にある場合を具体的に言ってみてほしいな」に応えた方が話は進むと思うぞw

あと、悪いが、
実はお前のなんか知らんが偉そうなw自説はダメなはずだぞ。なんででしょう?
も、よろしくw
0474デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:43:52.75ID:9Qi89m1Q
>>469
こいつには、かっこの使い方も説明しないといかんのか(呆)

丸括弧
https://kotobank.jp/word/%E4%B8%B8%E6%8B%AC%E5%BC%A7-636089
文章表記中などで用いる( )の記号。補足説明や省略可能などを表すのに用いる。

「(シェルスクリプト)」は補足説明であり省略可能なんだから
重要な言葉じゃねーんだよ。はー、こいつ日本人じゃないだろw
0475デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:45:12.45ID:9Qi89m1Q
>>473
お前に言っておく。

自分で作ったファイルに他人には見られてはいけないパスワードなどを入れるなら
パーミッションに問題がないか必ず確認しろ

このように「自分以外が見れないことを確認する必要」はあるんだからな
0476デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:47:29.66ID:ORLEAcPg
>>474
お前はいつも指摘の仕方が異常
お前自身ががその程度なのかもしれないがという話にかならんぞ

なに当たり前のことを言っているねん
それに、逆に補足するということはそれもある意味重要ということだぞ?別にどうでもいいなら補足もしないからな
0477デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:51:39.81ID:9Qi89m1Q
重要なときには ”ダブルクォートで” とか「かぎかっこ」でくくるんだよアホw
0478デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:52:38.90ID:ORLEAcPg
>>475
>自分で作ったファイルに他人には見られてはいけないパスワードなどを入れるなら
パーミッションに問題がないか必ず確認しろ

なるほど、むちゃくちゃなシステムなんだな
自分では確認できない、他人になり変わらないとわからないってかw
大丈夫、お前の使ってるようなお前が作った変な環境なのは使ってない作ってないから

てか、lsで確認できる程度なら全然関係ない話だろうがっ。それも自分のではなくて他人のって話だろうが、お前のは(一般ユーザがすることではないな)
無理がありすぎな設定だな。また妄想の世界に入ってるのか

>lsで確認できる程度
ここのヒントがあります(ナゾw)
0479デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:54:09.45ID:9Qi89m1Q
>>478
もう「testでは自分以外が見れないことを確認することができない」って話をしてること忘れちゃったの?
0480デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:54:47.00ID:ORLEAcPg
>>477
括弧付きでも保続で書くのは「[ある意味]重要」な
本当にお前は読めないヤツだな

だからそんな当たり前のようなことを書くのは、お前自身が〜だってw
0481デフォルトの名無しさん
垢版 |
2020/09/23(水) 20:56:27.40ID:9Qi89m1Q
>>469で自分から括弧の話題を初めたのに↓

> って、括弧付きでわざわざ シェルスクリプト って書いていて、

何を言ってるんだろうこいつはw
0482デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:17:39.64ID:ORLEAcPg
>>479
わかった、話が通じないのは

test なんて自分で読み書きできるかどうかだけの話、それを他のユーザが読めるか確認するために使おうとする奴なんていない
ls(他)使うのは当たり前(ていうか普通コマンドなどで確認するよなw)

お前のいうtestをそんなので使うシチュエーションなんてハナからあり得ないから俺の頭に入ってこなかった
あくまでも、ファイル読みたい書きたいの話でしかしてない、俺は

なんか悪かったなw
悪かった答えの一つとしてACLを調べればいいよ。lsで確認できない、ACLはパーミッション無視してACLでのになるシステムもあったず
(めんどくさいからお前のいう目的でもsudo+test使った方が簡単だと思うぞw ダミーユーザ作ってもな、コマンドで確認しても後で変わるような変なシステム使ってるなら)
0483デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:19:44.43ID:ORLEAcPg
>>481
あああぁ
「で」は「だが」のつもりだったんだが、なんでか「で」と打っていた
そりゃお前が噛み付くのも仕方がないな、そこはスマン
0484デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:20:01.69ID:9Qi89m1Q
>>434の質問に対して、>>482という答えを言うバカでしたね(笑)

434 名前:デフォルトの名無しさん[sage] 投稿日:2020/09/23(水) 13:32:17.22 ID:BgUeNus/ [1/3]
lsコマンドをシェルスクリプトの中で使う場合ってなにかある?
ファイルの列挙に関してはfindコマンドや,もっと簡単にグロブとかを使った方が
余計な書式を含まずに処理しやすいし,
ファイルの情報に関してはtestコマンドの方が一発で分かる
(例えばディレクトリかどうかはlsコマンドの場合権限欄の情報を文字列として
解析しなくてはいけない(先頭にdがあるかどうか)が,
testコマンドの場合はtest -e && test -dで完結する)

lsコマンドを使わないとできないシェルスクリプトでの処理ってなにかあるかな。
興味本位でききたい(言わずもがなだけどlsコマンドが不要!とかそういう話ではなく)。
0485デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:22:05.00ID:ORLEAcPg
お前が質問とは関係ないシチュエーションの話をいきなりしだしたのがだな
質問者もそんな目的でtest使おうとは思ってないだろうw
0486デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:24:49.53ID:9Qi89m1Q
質問と関係ないシチュエーション?
自分以外から読み書きできないことを確かめるというシチュエーションは
testではできずlsではできるので、質問と関係ありますが?

> 質問者もそんな目的でtest使おうとは思ってないだろうw
すでに、礼を貰ってるんだがw

> 443 名前:デフォルトの名無しさん[sage] 投稿日:2020/09/23(水) 16:43:09.16 ID:BgUeNus/ [3/3]
> >>439
> あーこれはあるな。
> thx



な?こいつ色々やばいだろ?w
0487デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:29:24.56ID:ORLEAcPg
だから、それもそのユーザがという話だろう。それが俺の言う
質問者がどっちかというのは知らんけど、さすがにtestを使ってるならお前の言うようなシチュエーションはないなっていう、そう書いてるだろ
0488デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:33:26.77ID:ORLEAcPg
>>487
>そう書いてるだろ
俺がな。いちおうw

>>486
しつこく自説を書き偉ぶりたいなら、お前のは重大なミスw(なんか急にドモモが〜とか言い出すんだから重大なんだろうw)があると思うからちゃんと調べてから書いてね、せっかく「教えてやったw」んだから
0489デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:38:54.36ID:9Qi89m1Q
>>487
俺のシチュエーションは質問者が「あーこれはあるな。」と言いました。
それとは関係ないお前のが考えたシチュエーションの話を始めないでください(笑)
0490デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:40:57.92ID:9Qi89m1Q
ドコモ口座のくだりは「自分以外が見れないことを確認するというシチュエーション」を
あなたが思いつかなかったからですねw
0491デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:45:02.67ID:9Qi89m1Q
質問者「lsコマンドをシェルスクリプトの中で使う場合ってなにかある?」
ORLEAcPg「testを使ってるならお前の言うようなシチュエーションはない」

な?会話になってない
0492デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:46:06.17ID:ORLEAcPg
シチュエーションは書いてないね
だから、それも その別のユーザが読み書きしたいときにできるか確認=読み書きできないのかではなくて読み書きしたいができるのか という話も全然ありえるね

多分、>>446もそうだと思うよ「スクリプトで書くと」と書いてるしね
質問者も。理由を書いてるように

お前のようにはなりたくないけどw、多分俺の方じゃないかなあどうかなああ

お前はそのシチュエーションに当たった想像した時にtestを使おうと思ったの?そんなに自説に拘るとは
0493デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:49:21.84ID:9Qi89m1Q
> だから、それも その別のユーザが読み書きしたいときにできるか確認=読み書きできないのかではなくて読み書きしたいができるのか という話も全然ありえるね

質問者「lsコマンドをシェルスクリプトの中で使う場合ってなにかある?」
俺「他のユーザーが読み書きでないこと確認したいときはls使うしか無いよ」
質問者「 あーこれはあるな。tkx」

ORLEAcPg「読み書きしたいができるのかというシチュエーションがー」


意味不明w
0494デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:50:10.12ID:ORLEAcPg
>>492
>理由を書いてるように
俺がな。いちおうw

大げさに急にドコモが〜とか騒ぎだしたくせに、責任転嫁か、意味不明すぎ
脊髄反射のような内容のない連投は辞めろよw
0495デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:52:19.69ID:ORLEAcPg
自説は一歩も引きません、俺の頭の中で思ったことは全て正解ですそれしかありません
モードに入ったか

すでにそれだけじゃないと書いたので ちゃんとそれに対して 反論してね(なんて言いたくはないが誰かの常套句なのでw)
0496デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:53:09.37ID:9Qi89m1Q
会話のキャッチボールができてないんだろうね
俺は質問者の質問に対して、testではできずにlsでしかできないという一例を
言ったのにこいつは何が言いたいんだろうかw

ORLEAcPg「testを使ってるならお前の言うようなシチュエーションはない」
0498デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:54:33.12ID:9Qi89m1Q
>>495
お前は質問者の質問に対して何を言いたいのか
それだけを書いてみてよw

無理だろ?お前は質問者を置いてきぼりにしてるからね
0500デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:58:26.51ID:ORLEAcPg
すでに書いてる。堂々巡りだな、それでよくキャッチボールとかw

そして ls はお前の言うようなのでも俺の言うようなシチュエーションでも不備があるともなw
0501デフォルトの名無しさん
垢版 |
2020/09/23(水) 21:59:35.70ID:9Qi89m1Q
> すでに書いてる。
聞いてるのは質問者への答えだが?どのレス?

言えないはず
0502デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:01:18.13ID:ORLEAcPg
>>499
イミフ
ls は使うよ。使う場合はお前じゃない人が書いてる場合とか
あえて言うなら、お前のそれだけじゃ使えない場合もあるよってことかな

てか、なんでお前がそんなレスするのかイミフすぎw
0503デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:01:22.69ID:9Qi89m1Q
> そして ls はお前の言うようなのでも俺の言うようなシチュエーションでも不備があるともなw

質問者にlsを使う場合を聞かれたから、その答えである「lsを使わなければいけない場合」を俺が言ったのに、
なぜか「lsでは駄目な場合もある!」と言い出してけんかを売ってくるアホw
0505デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:02:18.95ID:ORLEAcPg
>>501
お前の頭の構造は計り知れない。わかるかっw
そしてイミフなことを急に言われても困惑するだけ
0507デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:04:23.38ID:ORLEAcPg
>>503
補足だよw
ホントにお前は自分のミス/抜けなりを絶対に認めないマンだなw

>>504
堂々巡りw キャッチボールとはなんなのか。お前のは壁当て(?)だ
0509デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:05:31.69ID:ORLEAcPg
>>506
なんで「お前が」「俺に」命令してるのか、全くわからんな
真っ当な根拠をちょっと言うてみ
0511デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:06:23.28ID:ORLEAcPg
>>508
>質問者の質問に答えてみろっていっても、やっぱり俺にレスをする

>質問者の質問に答えてみろっていっても、
>やっぱり俺にレスをする

超絶イミフすぎw
0513デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:07:34.39ID:ORLEAcPg
しょもな。さすが自称キャッチボールできるが実はしたことがない人だなあ
ショーーーもなっ
0519デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:11:59.79ID:ORLEAcPg
>>515
こいつ とは 誰もが こんな風になる何度も繰り返してるパターンだから気にすることないよ

>>517,518
よく言うよww何言ってんだか
0520434
垢版 |
2020/09/23(水) 22:20:56.68ID:BgUeNus/
どっちの味方をする訳でもないんですけど,
私の質問を別の言い方で表わすなら
「(対話的でない)シェルスクリプトにおいて
私はlsコマンドを使う意義をあまり感じないんだけれど
(なぜならlsコマンドを使うほぼ全ての状況において
やりたいことをもっと簡単に実現できる
コマンドが用意されてるから。例: find, test),
lsコマンドを積極的に使わないといけない場合はありますか」
ということで,それに対して
「ある。lsコマンドでないと他人の権限を確認できない。
(testコマンドは自分の権限のみ)」
という解答を頂いたので,それで十分です。
ありがとうございました。
0521デフォルトの名無しさん
垢版 |
2020/09/23(水) 22:53:35.65ID:9Qi89m1Q
どういたしましてw

lsは対話型で使うようなイメージだけど
POSIX準拠コマンドは最低限だが必要なコマンドを網羅しているはずという観点から見ると、
もっと簡単に実現できるコマンド(findやtestじゃなくてstatなどね)の多くは
POSIX準拠ではないので、じゃあどうやって実現するんだ?と考えると
lsコマンドでできるじゃんという結論に達するんだよ

その結論を前提としてlsコマンドの仕様を再確認すると
lsコマンドの出力形式はちゃんと決まっており
(対話的でない)シェルスクリプトから使うことも
想定されてることに気づく

lsコマンドは一覧表示だけではなくファイルの属性を
取得するためのコマンドでもあるんだよ
0522デフォルトの名無しさん
垢版 |
2020/09/24(木) 23:24:13.87ID:92vN9a+2
>>434
何万ファイルもあるディレクトリ以下の実際のファイル数をカウントしたい時とか。
ls -U ディレクトリ | wc -l
が速くて良いかな。
これじゃディレクトリも一緒にカウントしちゃうか・・・
0523デフォルトの名無しさん
垢版 |
2020/09/24(木) 23:25:44.41ID:92vN9a+2
うう。リロード忘れてとっくの昔に終わった話にレスを・・・orz
0524デフォルトの名無しさん
垢版 |
2020/09/24(木) 23:27:34.11ID:92vN9a+2
あ、まだ終わってなかったかな?
まあでもたいした事書いてないからどうでもいいや。俺のことは忘れてくれ。
0526デフォルトの名無しさん
垢版 |
2020/09/25(金) 19:30:49.67ID:mj+ujYgo
普通に使うな。逆になんで使わないと思うのか不思議
lsで問題があるようなら言うような別のをにするけど
0527デフォルトの名無しさん
垢版 |
2020/09/25(金) 20:48:34.96ID:3RZRIqWS
いろんなコマンドを臨機応変に使うことが気になる質だったんやろ。
好き好きとしか。
0528デフォルトの名無しさん
垢版 |
2020/09/25(金) 21:48:25.44ID:jsxvfqFg
>>526
POSIX限定コマンドじゃないなら
ls以外でほとんどのことができるからでしょ
macOSがオプション違っていて面倒くさすぎるってのを除けば
パーミッションとかもstatコマンドで取得できるし

それにしてもWindowsはLinuxに対応したから楽になったけど
macOSはBSD系だからローカルでテストして
そのままサーバーに持っていくってのが難しくなってるなw
0529デフォルトの名無しさん
垢版 |
2020/09/25(金) 21:49:09.32ID:jsxvfqFg
訂正
POSIX準拠コマンドに限定しないなら
ls以外でほとんどのことができるからでしょ
0531デフォルトの名無しさん
垢版 |
2020/09/26(土) 00:51:51.88ID:QU/lr7ZN
>>530,527
ああ、
>コマンドを臨機応変に使うことが気になる質
は、他の人を指してるとも読めるな。そっちのつもりならすまん
0533デフォルトの名無しさん
垢版 |
2020/09/26(土) 02:34:50.07ID:QU/lr7ZN
>>532
>>531の、
>コマンドを臨機応変に使うことが気になる質
は「ことが気になる質」余分だった「コマンドを臨機応変に使う」だなと書き込んだ後で気がついた。まあいいかとほっといた(真逆(?)なんだが)。すまん

なんとなくw理解。どうも&重ね重ねすまん
0534デフォルトの名無しさん
垢版 |
2020/09/28(月) 21:25:26.80ID:iGYBTUav
誰とは言わんけどツイッターで永遠と古い記事繰り返し流してるボットいるよね
リンク切れてるし邪魔なだけなんだけどああいうの消し去りたい
0535デフォルトの名無しさん
垢版 |
2020/09/30(水) 23:58:17.77ID:QG8+TwCh
https://zenn.dev/mattn/books/bb181f3f4731920f29a5/viewer/5

> 既にシェルスクリプトのみでやる領域を超えてきています。
> 本来ならば正しいプログラミング言語を選んで正しくフィルタリングすべきだと思います。

と書いてありますが、これを「正しいプログラミング言語」で書くとどうなりますか?
シェルスクリプトだけでやるより分かりやすくなりますか?
0536デフォルトの名無しさん
垢版 |
2020/10/01(木) 00:02:53.15ID:5ZG2Vz6Q
あげー
0537デフォルトの名無しさん
垢版 |
2020/10/01(木) 07:52:50.34ID:theiHz1p
>>535
Windows のRuby で、JSON ファイルをダウンロードして保存する、部分だけを作ったが、
85KB のファイルの中身には、日本語は無く、
ほとんど、\u6708 みたいなユニコード・コードポイントの表示ばかりで読めない。
{{\u30ab\u30ec\u30f3\u30c0\u30fc 10\u6708}}

ダウンロードする際の、オプションでも間違ったのかな?

download_file = "wikipedia.json"

# ファイルが存在しない時だけ、ダウンロードして保存する
unless FileTest.exist? download_file
require 'open-uri'
require 'cgi'
require 'date'

today = Date.today.strftime( "%-m月%-d日" ) # 今日の日付。1桁表示。例、10月1日
url = "https://ja.wikipedia.org/w/api.php?format=json&;action=query&prop=revisions&rvprop=content&exintro&explaintext&redirects=1&titles=" +
CGI.escape( today ) # URL encode

# ダウンロードしたファイルを保存する
open( url ) do |file|
open( download_file, "w" ) do |out|
out.write( file.read ) # 書き込み
end
end
end
0539537
垢版 |
2020/10/01(木) 08:27:48.51ID:theiHz1p
Ruby の方が、一般的な関数を使っているから、分かりやすい。
例えば、CGI.escape で、URL encode してる

元のサイトだと、date +%-m月%-d日
の部分を、何かでエンコードして、以下のようにして、
date +%-m%%E6%%9C%%88%-d%%E6%%97%%A5

それを、titles の所に書いている。
titles=$(date +%-m%%E6%%9C%%88%-d%%E6%%97%%A5)
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況