【POSIX】UNIXプログラミング【BSD】
1 :名無しさん@お腹いっぱい。 :2015/09/24(木) 23:08:25.35 .net 無かったので
2 :名無しさん@お腹いっぱい。 :2015/09/24(木) 23:40:57.34 .net だれかカキコってよ。。。
3 :名無しさん@お腹いっぱい。 :2015/09/24(木) 23:50:02.10 .net ム板でやれ
4 :名無しさん@お腹いっぱい。 :2015/09/25(金) 06:53:00.38 .net char s[4096]; puts(getwd(s)); ↑ これだけのプログラムなのにセグフォります。わかる方、お願いします。
5 :名無しさん@お腹いっぱい。 :2015/09/25(金) 16:23:49.49 .net 荒らし
6 :名無しさん@お腹いっぱい。 :2015/09/25(金) 20:01:55.11 .net 答えられないと嵐ということにするんですね、わかります
7 :名無しさん@お腹いっぱい。 :2015/09/25(金) 21:54:48.77 .net じゃ、馬鹿
8 :名無しさん@お腹いっぱい。 :2015/09/25(金) 22:08:33.18 .net 能無しw
9 :4 :2015/09/26(土) 09:11:51.05 .net 追加情報。 char s[4096]; getwd(s); puts(s); ↑だとなぜかセグフォりません。>>4 だとセグフォります。
10 :名無しさん@お腹いっぱい。 :2015/09/26(土) 09:19:41.12 .net せぐふぉりゃー
11 :名無しさん@お腹いっぱい。 :2015/09/26(土) 09:41:40.99 .net すみませんが詳しい方のみ回答をお願いします
12 :名無しさん@お腹いっぱい。 :2015/09/26(土) 10:37:26.21 .net せぐ堀?
13 :名無しさん@お腹いっぱい。 :2015/09/26(土) 11:31:51.19 .net ユーフォ
14 :名無しさん@お腹いっぱい。 :2015/09/26(土) 11:46:54.45 .net >>9 getwdの戻り値を確認しろよ
15 :名無しさん@お腹いっぱい。 :2015/09/26(土) 11:48:12.70 .net ふぉ〜?
16 :名無しさん@お腹いっぱい。 :2015/09/26(土) 11:52:56.49 .net >>4 てかgetcwdをつかえ
17 :名無しさん@お腹いっぱい。 :2015/09/26(土) 12:25:18.81 .net >>16 getcwdに変えてみました。 char s[4096]; puts(getcwd(s, sizeof s)); ↑ でも全く同じようにセグフォります><
18 :名無しさん@お腹いっぱい。 :2015/09/26(土) 12:28:23.71 .net (V)o\o(V)セグフォフォフォ
19 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:13:41.33 .net >>17 第一引数のサイズがたりなければNULLを返す 戻り値は一旦NULLでないことを確認しなければ危険だ
20 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:32:49.82 .net >>19 >>9 だと動作するんだから、NULLが返ってないことは明らか。
21 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:33:52.40 .net 前スレからの釣りだよ
22 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:42:48.97 .net >>19 NULLチェック入れてみました。 char s[4096], ss; ss = getcwd(s, sizeof s); if (ss != NULL) { puts(ss);} ↑ やっぱりセグフォります><
23 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:46:29.33 .net コピペミス? ssがchar?
24 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:49:39.44 .net >>23 char *ss でした。やっぱりセグフォります。
25 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:53:02.01 .net どこのディレクトリで実行してるの?
26 :名無しさん@お腹いっぱい。 :2015/09/26(土) 13:58:40.82 .net ディレクトリはちゃんと存在するし/bin/pwdコマンドで表示されます。 というか >>9 なら正常動作するんですよ。
27 :名無しさん@お腹いっぱい。 :2015/09/26(土) 14:07:42.56 .net 原因わかったよ。教えてやったらパンツ脱いで家の周り一周してくれる?
28 :名無しさん@お腹いっぱい。 :2015/09/26(土) 14:12:32.40 .net >>26 だったら >>9 を使えばいいじゃない
29 :名無しさん@お腹いっぱい。 :2015/09/26(土) 14:28:21.67 .net 返事ねえな。確かにおれの環境でもこれが Segmentation fault で、 main() { char s[4096]; puts(getcwd(s, 4096)); } このコードはそのままであることをすれば正常に動くんだが はやくパンツ脱いで家の周り一周して写真とってUPだ!
30 :名無しさん@お腹いっぱい。 :2015/09/26(土) 14:33:50.80 .net ぱんつ!ぱんつ!ぱんつ!
31 :名無しさん@お腹いっぱい。 :2015/09/26(土) 14:36:14.41 .net プログラミングの際の注意事項があります。 コンピュータのCPUの電流が何ボルトであるか調ベておく事が大切です。 32ボルトCPUを搭載したコンピュータでは、 32ボルト用のプログラミングをすること。 64ボルトCPUを搭載したコンピュータでは、 64ボルト用のプログラミングをすること。 これを間違えればプログラムが動きません。
32 :名無しさん@お腹いっぱい。 :2015/09/26(土) 14:49:00.46 .net おかあさん、あの5Vはどこへいったのでしょう?
33 :名無しさん@お腹いっぱい。 :2015/09/26(土) 14:51:36.92 .net >>21 前スレ?
34 :名無しさん@お腹いっぱい。 :2015/09/26(土) 15:34:11.77 .net 秋葉の駐車場から飛んでいった
35 :名無しさん@お腹いっぱい。 :2015/09/26(土) 15:36:17.24 .net 屋根まで飛んで 壊れて消えた
36 :名無しさん@お腹いっぱい。 :2015/09/26(土) 15:43:56.53 .net そして後藤大地が割れ
37 :名無しさん@お腹いっぱい。 :2015/09/26(土) 16:05:31.36 .net 2chでプログラミング関係はID無い板じゃ無理だわ IDの出るこっちの板でやれよ UNIXプログラミング質問すれ Part10 http://peace.2ch.net/test/read.cgi/tech/1303113996/
38 :名無しさん@お腹いっぱい。 :2015/09/27(日) 15:57:25.02 .net 結局誰も答えわからず終了?
39 :名無しさん@お腹いっぱい。 :2015/09/27(日) 16:24:07.87 .net たぶんgetcwdのプロトタイプ宣言がないからだな unistd.hをインクルールドしてないとオレの環境でも落ちる
40 :名無しさん@お腹いっぱい。 :2015/10/13(火) 17:11:37.27 .net ちゃんとワーニング出せよ
41 :名無しさん@お腹いっぱい。 :2015/10/13(火) 22:05:14.48 .net >>22 おまえの環境なんて知るか、ボケ
42 :名無しさん@お腹いっぱい。 :2015/10/16(金) 06:40:28.28 .net >>22 ss はポインタじゃないだろ
43 :名無しさん@お腹いっぱい。 :2015/10/22(木) 22:51:45.89 .net ☆ 日本の核武装は早急に必須ですわ。☆ 総務省の『憲法改正国民投票法』、でググってみてください。 日本国民の皆様方、2016年7月の『第24回 参議院選挙』で、日本人の悲願である 改憲の成就が決まります。皆様方、必ず投票に自ら足を運んでください。お願い致します。
44 :名無しさん@お腹いっぱい。 :2015/10/23(金) 09:30:19.09 .net 前スレで質問して、「UNIXでもネットトレーディングはできる」と 回答をもらった者です。そこで早速ネット証券の口座を作り、 ゆうちょ銀行100株を買ってみました。 で、買った株券はどこから出てくるのでしょうか? 念のため、CD-ROMドライブを開けてみましたが、 株券は入っていませんでした。 やはりUNIXはネットトレーディングに対応していないのでしょうか?
45 :名無しさん@お腹いっぱい。 :2015/10/26(月) 21:42:25.98 .net 病んでるなー 面白くないもの
46 :名無しさん@お腹いっぱい。 :2015/10/26(月) 22:13:38.12 .net ネットでチケット買って、「どこから出てくるの?」ってマジで聞いてきた奴いたし多少はね?
47 :名無しさん@お腹いっぱい。 :2015/10/27(火) 06:38:47.14 .net IPOに外れたんだろ。当たった人はちゃんと株券出てきたよ
48 :名無しさん@お腹いっぱい。 :2015/10/27(火) 09:48:06.21 .net プログラム書くかお金払って作ってもらえよw
49 :名無しさん@お腹いっぱい。 :2015/11/01(日) 11:24:24.73 .net 黒い画面は一般人からしたら 魔術師のマント たった一つの間違った言葉で 全部壊してしまうようで 恐くてで震える replは全てソクラテスの子孫だ 私は哲学者ではない 忍耐に耐えれず心が壊れる
50 :アルコール :2015/11/01(日) 11:36:54.76 .net 金は資源を割り当てるシステムとして正当化されるなら 君が金持ちに値する人間に似ている鏡の国の怪物になりたければ 計算至言か節約できないアルゴリズムになって正当化されるべきだ
51 :アルコール :2015/11/01(日) 11:39:55.46 .net プログラマはポエマーをバカにする 君の人生は 大局的にはポエむでしか正当化できないのに
52 :アルコール :2015/11/01(日) 11:47:46.41 .net 空気は生存にとって不可欠だが、 大量にあるために限界費用はゼロになる。 これが幸せの定義である。 幸せとは生存に不可欠な空気のようなもののことだ。
53 :アルコール :2015/11/01(日) 11:52:14.49 .net あなたが空気のようであればあなたは幸せである あなたは窒息するまでそれに本能的に気付かない 理性的にはわかっている 恋人に裏切られたらわかる気持ちのようなものだ 人を恨んではいけないがあなたは人を必ず恨む
54 :名無しさん@お腹いっぱい。 :2015/11/01(日) 14:38:33.16 .net 有名なの?
55 :名無しさん@お腹いっぱい。 :2016/01/08(金) 06:52:54.23 .net なんだこんなスレあったのか みんな使わないのか?
56 :名無しさん@お腹いっぱい。 :2016/01/08(金) 10:06:57.50 .net ム板でいいじゃん
57 :名無しさん@お腹いっぱい。 :2016/01/08(金) 10:09:37.05 .net >>56 でもあいつら文法と入門書しかしらないじゃん
58 :名無しさん@お腹いっぱい。 :2016/02/06(土) 23:25:42.18 .net posixってストールマンが提唱したってマジ?
59 :名無しさん@お腹いっぱい。 :2016/02/08(月) 11:24:59.92 .net そんなこと誰が言ってたの
60 :名無しさん@お腹いっぱい。 :2016/02/09(火) 13:45:14.90 .net POSIXという「名前」はリチャード・ストールマンがIEEEに提案したものである 当てにはならんがw
61 :名無しさん@お腹いっぱい。 :2017/12/29(金) 08:09:55.71 .net 誰でも簡単にパソコン1台で稼げる方法など 参考までに、 ⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。 グーグル検索⇒『宮本のゴウリエセレレ』 DAKMZBIRMH
62 :名無しさん@お腹いっぱい。 :2018/01/18(木) 15:31:56.03 .net POSIXのコマンドラインユーティリティにfort77加えられていることに気がついた。 今更かよ!?
63 :名無しさん@お腹いっぱい。 :2018/01/20(土) 07:20:49.00 .net FORTRAN 77 って行番号の桁がある規格外に古びた言語でしょ なんでそんなのを2018年にもなって実装してんの
64 :名無しさん@お腹いっぱい。 :2018/01/21(日) 12:51:59.78 .net 実装しちゃいけない理由がなにかあるのか?
65 :名無しさん@お腹いっぱい。 :2018/01/21(日) 21:36:29.21 .net fort77コマンドってはるか昔から存在するわけで、新たに実装って話じゃなく、現状を追認して規格化しただけよ。 今さら感は確かにある。
66 :名無しさん@お腹いっぱい。 :2018/01/22(月) 00:49:02.35 .net FORTRANなんて捨てろとも思うがどうしても標準化するならfort90実装の方が 良かったなぁ……なぜ今になってfort77実装なのか……。 やっぱUnix畑の連中の脳味噌は理解しがたいわ ていうかWikipedia見たらfort90ってANSI標準に取り込まれてたんだな。 なら一層POSIXもfort90を採用してくれりゃいいのに。
67 :65 :2018/01/22(月) 09:04:02.06 .net ちゃんと規格確認したら、fort77は1995年頃の Issue 4 の時点で既に規格に入ってたって書いてあるやんけ。 >>62 にまんまと騙された。 おまけに将来規格から削除するかもねとまで書いてあるぞ。
68 :名無しさん@お腹いっぱい。 :2018/01/22(月) 15:29:06.97 .net > Issue 7 > SD5-XCU-ERN-97 is applied, updating the SYNOPSIS. > POSIX.1-2008, Technical Corrigendum 2, XCU/TC2-2008/0102 [546] and XCU/TC2-2008/0103 [546] are applied. -- fort77 / The Open Group とあるけど?
69 :65 :2018/01/22(月) 18:51:00.81 .net >>68 それ、内容が更新されたって記載であって、 「fort77加えられている」っていう記載じゃないじゃん。 「fort77加えられ」たって記載は、その上にある First released in Issue 4. の方。 でもって、Issue 4 Version 2のリリースは、1990年代半ば。
70 :名無しさん@お腹いっぱい。 :2018/01/22(月) 19:27:14.92 .net Fortranとは全く関係ないんですけど、foldコマンドについて質問です。 foldコマンドって所謂マルチバイト対応はしないのでしょうか。 (少なくとも) UTF-8で記述された日本語を含む平文をfoldに通すと 文字の途中のバイト列で切断され、結果的に改行近くの文字が破壊されてしまいました。 素人の発想ですが、バイト列が固定されるUTF-32に対し4の倍数バイト目で切断したならば 文字情報の破損を防げると思ったのですが、これもまた上手く生きませんでした。
71 :名無しさん@お腹いっぱい。 :2018/01/22(月) 19:34:17.15 .net >>70 実装依存なのでOSとそのバージョンを明らかにしないと誰も答えられない。
72 :名無しさん@お腹いっぱい。 :2018/01/22(月) 19:56:59.12 .net >>67 >>62 の「今更かよ!? 」は>>62 自身が「気がついた。」ことに対してじゃないのw
73 :名無しさん@お腹いっぱい。 :2018/01/22(月) 20:17:00.18 .net >>72 そんならOK だとすると>>68 は別人ってことかな。
74 :70 :2018/01/22(月) 20:25:50.78 .net >>71 すいません。 $ fold --version fold (GNU coreutils) 8.26 $ uname --operating-system GNU/Linux よろしくお願いします。
75 :名無しさん@お腹いっぱい。 :2018/01/22(月) 20:44:27.42 .net >>74 最新版でもマルチバイト文字には対応してないね。 http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/fold.c
76 :名無しさん@お腹いっぱい。 :2018/01/22(月) 20:54:10.98 .net ちなみにFreeBSDのfoldはマルチバイト対応してる。 C言語でプログラム書ける人なら移植は難しくないけど。 https://github.com/freebsd/freebsd/blob/master/usr.bin/fold/fold.c
77 :名無しさん@お腹いっぱい。 :2018/01/22(月) 21:15:37.32 .net >>75 わざわざ確認していただいてすいません。 ありがとうございます。 >>76 FreeBSDってGitHubにリポジトリ持ってるんですね。まずそれにビックリしました。 foldはシェルスクリプトでどうにかします。 C言語はともかく移植してリポジトリに登録して……っていう作業はキツいっす
78 :名無しさん@お腹いっぱい。 :2018/01/22(月) 21:23:49.39 .net リポジトリに登録する必要はないのでは。。。
79 :名無しさん@お腹いっぱい。 :2018/01/23(火) 08:41:53.50 .net 必要は勿論ないけど、よそのソースいじるんだったらバージョン管理するのはもはやデフォでしょ。 自分だってやると思う。 さすがにリポジトリまるまるコピーするとデカイので、こういう場合はRCSを使うかもしれないがw
80 :名無しさん@お腹いっぱい。 :2018/01/23(火) 14:10:28.42 .net gitなんだからcloneしてそのままいじればいいんだろう? 登録ってなんぞ?
81 :名無しさん@お腹いっぱい。 :2018/01/23(火) 14:45:18.23 .net FreeBSDのgitリポジトリをcloneすると3GB越えになるから、 たかだか1ファイル6KBのためにそれだけcloneするのは オッサン的には心が痛む。 FreeBSDの場合、マスターは subversion だから、そっちを checkout するだけなら 1GBくらいで済むけど、それだと コミットして自分の変更内容を管理できないし。 で、必要なところだけを部分的に自分専用のリポジトリに 突っ込むのなら、登録って話になると思う。
82 :名無しさん@お腹いっぱい。 :2018/01/24(水) 04:32:28.92 .net めんどくさいって言ってる人間がそんなことするのか? あり得ない妄想膨らませてどうすんの。
83 :名無しさん@お腹いっぱい。 :2018/01/24(水) 08:55:04.68 .net まあリポジトリ登録なんてどんなバージョン管理ツール使っても一瞬だから、そこが心理的障壁になる感覚はよく分からんな。
84 :名無しさん@お腹いっぱい。 :2018/01/24(水) 13:18:38.75 .net 単純に低能なだけだろVCSも碌に扱えないような人間が ソフトウェア開発に咬むとか笑止
85 :名無しさん@お腹いっぱい。 :2018/01/24(水) 13:51:23.74 .net なんでそこまで辛辣になれるのかよく分からん。 日頃よほど辛い目にあってるとかかな。
86 :名無しさん@お腹いっぱい。 :2018/01/24(水) 14:38:41.95 .net 辛辣っていうかあたりまえでは…… ちょっと口調は荒いけど,OSSに参加するならそれくらい勉強しようよとも思う ってのが正直なところ
87 :名無しさん@お腹いっぱい。 :2018/01/24(水) 14:52:34.67 .net 自分の必要に応じて手元でソース改変するか自力で書くかって話 (しかも結局自力で書くことにしたって話)を 「OSSに参加する」って表現する感覚は俺には分からないな。 前者を「OSSを利用する」って表現するなら分かるが。 何をそんなに怒ってるのかまったく分からん。 正義感とかじゃないよな。 自分の思う通りに人が動かないと満足できないってこと?
88 :名無しさん@お腹いっぱい。 :2018/01/24(水) 14:59:33.03 .net >>86 いつの間にOSSの開発になったんだ?
89 :名無しさん@お腹いっぱい。 :2018/01/24(水) 16:37:04.40 .net ストールマンもリーナスもキチガイだし多少はね? まあ86が彼等に匹敵する技量の持ち主だとは到底思えないんだけども(失笑)
90 :名無しさん@お腹いっぱい。 :2018/01/24(水) 16:48:10.52 .net いやいや、一番過激と目されるストールマンだって、ソースの公開範囲は、そのソフトウェアの利用者だけで良いとしているぞ。 GPLにもそう書いてある。 (ただし、ソースを配布された利用者が、さらにそのソースを再配布することを制限してはいけないので注意) 自分が使うために改変したソースにまで公開義務があるなんて考えてる人って、OSS原理主義者と目されている人にもいない筈。 そんなこと考えるのは、むしろ OSS ライセンスに疎い人なんじゃないか?
91 :名無しさん@お腹いっぱい。 :2018/01/25(木) 16:40:38.16 .net foldのマルチバイト対応云々言い出した人どうなったんだろ 喧騒に巻き込まれたくないから書き込んでないだけならいいんだけど
92 :名無しさん@お腹いっぱい。 :2018/01/30(火) 07:13:17.94 .net POSIX的に「絶対に存在する」「中身のある」ファイルってなんだろう。 何かの処理を解説する上でそのファイルを使いたい。 ttps://www.ibm.com/developerworks/jp/linux/library/l-awk1/index.html 例えばawkを紹介するこの記事ではawkで処理するファイルに/etc/passwdを選んでるけど、 ttp://pubs.opengroup.org/onlinepubs/009695399/functions/link.html ここを見る限り/etc/passwdは任意のようだし… /dev/nullとかはPOSIXで決ってるけど、テキストファイルじゃないから、自分の用途には合わない。
93 :名無しさん@お腹いっぱい。 :2018/02/05(月) 13:28:48.78 .net ここも読んでるとは思うけど、あきらめて/tmp/unko.txtとか自前で作るしかないやろ http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap10.html
94 :名無しさん@お腹いっぱい。 :2018/02/13(火) 20:37:58.33 .net UnixつーかPOSIXで, 「行の先頭に (同じ) 文字列を加える」ことに特化したコマンドない? sed でもいいんだけど,Unix哲学に基きたい。 ``` foo bar buzz ``` っていうのに対して, ``` aaafoo aaabar aaabuz ``` っていうのを付け加える。 aaaっていう文字列が書かれたファイルはなくて,できれば引数として渡したい。
95 :名無しさん@お腹いっぱい。 :2018/02/13(火) 20:38:27.00 .net 変更後の buz → buzz
96 :名無しさん@お腹いっぱい。 :2018/02/13(火) 20:40:43.80 .net そういう各行の編集をするためにこそsedがあるんじゃん
97 :名無しさん@お腹いっぱい。 :2018/02/13(火) 21:50:29.81 .net pasteでいけると思ったが > aaaっていう文字列が書かれたファイルはなく で無理ぽ for l in $(cat ./file.txt | wc -l); do printf 'aaa\n' >> gen.txt; done として paste -d '' gen.txt file.txt とか。
98 :名無しさん@お腹いっぱい。 :2018/02/14(水) 02:07:33.12 .net >>94 こっちでも聞いてみよう シェルスクリプト総合 その26 http://mevius.5ch.net/test/read.cgi/unix/1489979246/
99 :名無しさん@お腹いっぱい。 :2018/02/14(水) 14:02:20.03 .net >>94 pasteとyesを組み合わせた全く新しい格闘技
100 :名無しさん@お腹いっぱい。 :2018/02/14(水) 17:20:00.03 .net yes って「あるファイルの終端まで」みたいな判定効いたっけ?無理じゃね?
66 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★
本文 スレッドタイトル 投稿者