[過去ログ] くだらねえ質問はここに書き込め! Part 234 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
74(1): 2018/11/23(金)21:57 ID:JIHPAv3t(1) AAS
>>44
[ ] が testコマンドの略式だったのですね、スペースが無いとエラーになるのも含めスッキリしました。
>>46
シェルスクリプトもコマンドや分岐などの集まりでプログラムと思っていましたが、
都度手動で打っていたサーバのログ抽出や保守は、cronでbashのシェルスクリプトを使いたいのですが、
php, ruby, pythonでbashコマンドを叩いた方が良いということでしょうか?
昔perlは早々アクセスカウンター作れずに断念してしまったのですが、
bashスクリプトでも、同じ内容でもキュッとまとめたような書き方を見てしまうと、
1行ずつ足して実行の繰り返しで、だらだら長くなりがちな自分と比べると、苦手意識が増えるばかりですが
泥臭く書いても目的通り動けば良いと考えればいいのでしょうか。
省2
75: 2018/11/23(金)22:19 ID:omeVupDd(2/5) AAS
>>74
まあ好きなようにすればいいが
cronで自動実行するスクリプトがPythonでもPerlでもRubyでもなくshで書かれていることは注目すべき事実。
要するにシェルスクリプトっていうのはUnix系のOSと一番相性が良いってこと。
ただ,やっぱり対話的に使うっていう部分も多いせいでかなり癖のあるコマンド体系になってしまっているのは事実。
> 3 + 9
↑これを地に書けないというだけでもかなり不便だと思うわ。
76(1): 2018/11/23(金)22:26 ID:8muIEZF1(5/5) AAS
>>73
bashコマンドしか知らない人ってことだろ。
77(2): 2018/11/23(金)22:42 ID:ZL0gbajG(2/3) AAS
>>76
まぁ、
>シェルスクリプトはハードディスクやRAMに直にアクセスできるスクリプト言語
だからbashコマンドしか知らなくて良いんだろう
LinuxでOSを経由しないでハードディスクやRAMにアクセス出来るってすごすぎる
78: 2018/11/23(金)22:53 ID:omeVupDd(3/5) AAS
>>77
何か勘違いしてるっぽいが
/dev/ファイルを直感的に操作できるって意味だよ。
だいたいOS経由せずにどうやって「シェル(「カーネルを覆うもの」の意味ね。豆知識)」を起動するんだか。
79: 2018/11/23(金)22:56 ID:omeVupDd(4/5) AAS
あとは(これはシェルスクリプトの範囲にあるのかとは思うが)memprocやcgroupsの設定とかはシェル経由だよね。
PythonやRubyを使って,利用者に対してメモリやCPUへの参照権をどうこうするっていうのはかなり大変だと思う。尤も俺が知らないだけだけどw
80: 2018/11/23(金)23:00 ID:omeVupDd(5/5) AAS
まあここでPython/Ruby vs shellなんてやるつもりはないので,あしからず。
どっちも便利に使えばいいけど,やっぱり「Unix系OS(のカーネル)との相性」としてはシェルが有利だよね。
一方で型とかラムダ式とかそういうのはシェルスクリプトじゃ技巧的にしか実現できないので
PythonやRubyを用いたほうが明かに良い。
最初の質問者は高度なことをしたいんじゃなくて,ただLinuxネイティブで小さな操作をしたいと言っていたので
シェルスクリプトを勧めただけ。
81: 2018/11/23(金)23:07 ID:ZL0gbajG(3/3) AAS
>>77
そう言うことか。
でも、pythonでも/dev/ファイルのできるんじゃないのか
少なくとも、俺がコピペで使ったPythonのシリアル通信は/dev/でオープンだった
82(1): 32だす 2018/11/24(土)00:13 ID:ibBxDsAI(1) AAS
>>68
そのUUIDを/etc/fstabに記述する(root権限で) コピーのを書き換えしました
chrootを使って入る(root権限で) / に当たる sdb5 を指定しました
update-grubを実効 イメージ見つけた Found PCLinuxOS on /dev/sdb5 で起動時に選択はでる
grub-install --recheck /dev/sd(x) sdb かsdb5 にして
Probing devices to guess BIOS drives. This may take a long time.
/dev/root does not have any corresponding BIOS drive.
とでます、起動時の選択には出てくる(sdb5)が選択しても外付けでなく元のPCのが起動する。
マウントされてない感じです。
▼のはデバイス指定してやればできるのは判明(必要なのかはわからない)
省2
83(2): 2018/11/24(土)01:23 ID:xQlrfpxs(1) AAS
その貝殻のように覆うって表現がどうも釈然としないんだよな
シェルはカーネルを間接的に操作する窓口と解釈してるが
自販機のボタンとか受付嬢とかリモコンとかそんなん
84: 2018/11/24(土)01:51 ID:ZLBFDHFJ(1) AAS
>>83
外部リンク:qiita.com
が正しいか知らんが、
>shellとは、ユーザーランドで動作するアプリケーション
で、カーネルとのやり取りをするのに使われるのがシステムコール。
ユーザーランドで動作するアプリケーションであるシェルだけではなく、
ユーザーランドのアプリケーションプログラム、ライブラリ、ネット関連も
システムコールを使ってカーネルとやり取りすることが出来ると
85: 2018/11/24(土)08:52 ID:kuvyGZTt(1) AAS
「シェル」という言葉の意味はカーネルやシステムコール周りを勉強しないと
ちょっと分かりにくいかもね。
86: 2018/11/24(土)15:07 ID:pTyXRhvZ(1) AAS
OSを使用する者にとって殻に見えるからシェル。シェルを通さないとなにもできないから。開発者から見た名称じゃない。
87: 2018/11/24(土)23:03 ID:v0NOSCOm(1) AAS
>>83
普段よく「むやみに日常的にrootで作業してるとミスったりした時に痛い目にあうからやめましょうねー」とかいわれるやん?
それと同じでカーネルがやる必要のない作業を何でもかんでもカーネルが実行するとミスった時に痛い目にあうから、必要のない作業はカーネルとは別のプログラムがやった方が良いよねって事になるんや
(カーネルはハードウェアの上で直接動いてるんでrootどころじゃない次元でPCで出来ることは何でも出来ちゃう)
そうやって外側に出されたプログラムがいわゆるユーザーランドのプログラム
んでそのユーザーランドのプログラムのうち実際にユーザーとやり取りするプログラムがシェル
別に特別なプログラムじゃなくて要はユーザーとの間で入出力ができればいいんで、pythonだってrubyだってシェルとして使えるし他の何だって良い
88(1): 2018/11/25(日)02:47 ID:dg1l414I(1) AAS
シェルって単にシステムへの命令ってだけなのでは?
bashだのzshだの種類はあれどあくまで命令の方言でやること同じだし
端末でコマンド叩くのとデスクトップでマウス使うのとどう違うのさ
89: 2018/11/25(日)07:53 ID:HdrlTz3T(1) AAS
どうやら「ウィンドウマネージャ・デスクトップ環境はGUIシェルである」という意識はまだ浸透してないみたいだな。
この辺りって俺,どうやって知ったんだっけなぁ。>>88みたいな理解度の人になにか書籍やWebページでもお勧めできればいいんだけれど……。
90: 2018/11/25(日)08:13 ID:zArAAOmW(1/2) AAS
なぜ一々啓蒙しようとするのだろうか
91: 2018/11/25(日)08:20 ID:SKtXiC/e(1/3) AAS
もう質問への回答じゃなくて雑談だな
92: 2018/11/25(日)11:05 ID:RwQ+ixT4(1/40) AAS
Linuxを真面目に勉強しようとするとC言語がでてくるでしょ?
おれはCはしらないしいまさらやるのもメンドーなのでずっと逃げてるよw
93(1): 2018/11/25(日)13:30 ID:RLtg1iLp(1) AAS
だから使いこなせないんだよ
上下前次1-新書関写板覧索設栞歴
あと 909 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.201s*