- 1 名前:デフォルトの名無しさん [2009/05/14(木) 11:29:31 ]
- 前スレ
【.cmd】 バッチファイルスクリプト %4 【.bat】 pc12.2ch.net/test/read.cgi/tech/1229955189/
- 476 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 14:14:37 ]
- カレントディレクトリはドライブごとにある
echo %=c:% echo %=d:%
- 477 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 14:16:28 ]
- >>476
知らなかった・・・
- 478 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 14:37:09 ]
- set,
で=*環境変数も表示
- 479 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 14:40:28 ]
- 2009年も終わろうとしてるのに今更cmdのtipsなんて何の意味がある。
PowerShellに乗り換えようぜ。
- 480 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 15:50:56 ]
- =::=::\
は何?
- 481 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 22:25:59 ]
- >>479
PowerShellがNTに載ったらね
- 482 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 14:51:01 ]
- おまえらスレチガイ
pc12.2ch.net/test/read.cgi/win/1221046998/
- 483 名前:デフォルトの名無しさん [2009/12/21(月) 15:23:45 ]
- ipアドレスの3ブロック目で判断して、
レジストリを修正するバッチファイルが作りたいのです。 ipconfigしても情報が多すぎるし、 ドット2つの後ってどうしたらいいんでしょう…。 どなたかご教授願います。
- 484 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 15:26:03 ]
- for /f "delims=. tokens=3" %I in ("1.2.3.4") do echo %I
- 485 名前:sage [2009/12/21(月) 16:36:18 ]
- >>484
素晴らしすぎます!!! というか私の知識不足…頑張り不足…でしょうか。 ありがとうございました!
- 486 名前:483 mailto:sage [2009/12/21(月) 19:26:24 ]
- お陰様でここまできました。
for /f "tokens=14 delims=: " %%I in ('ipconfig ^| find "IP Address"') do set IP=%%I for /f "tokens=3 delims=." %%I in ("%IP%") do echo %%I echo %IP% ただ、スマートじゃないというかなんというか…。 こんなもんでしょうかね。
- 487 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 22:05:22 ]
- tokens=14 ってなんじゃそら。
skip=n でn行飛ばせるって知ってるよな?
- 488 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 22:55:04 ]
- 出たか、知ったかぶり。お手並み拝見
- 489 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 13:14:33 ]
- 横からだけど俺的にはアリだな。
tokens=14 を数える事は二度と無いとしても、将来コピペで使い回した時、 このスレでのやりとりを良い思い出として生暖かく思い出せるw "tokens=2 delims=:" だったら何も心に響かない。
- 490 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 17:32:15 ]
- OSにもれなくついてくるおまけの機能に多くを求めてはいけない。
メモ帳やペイントに不満を感じるなら勝手に別のアプリをお使いくださいというのがMSの基本姿勢。 不便だろうが欠陥があろうが知ったことではない。
- 491 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 17:47:03 ]
- delimsを.だけにすれば1行で書けるだろ?
for /f "tokens=?? delims=." %%I in ('ipconfig ^| find "IP Address"') do echo %%I ??は自分で数えろ
- 492 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 18:26:46 ]
- skipがどうしたって?
- 493 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 18:45:11 ]
- どんぐりの背比べ
- 494 名前:483 mailto:sage [2009/12/22(火) 18:47:08 ]
- >>491
ありがとうございました。 for /f "tokens=15 delims=." %%I in ('ipconfig ^| find "IP Address"') do echo %%I でバッチリ取得出来ました。 これが一番スマートですね。助かりました!
- 495 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 18:53:36 ]
- バッチごときでスマートって
しまむらで洋服買って自慢してるようなもんか
- 496 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 20:09:54 ]
- すっぱい葡萄
- 497 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 20:45:16 ]
- たぶん
for /f "tokens=15 delims=." %%I in ('ipconfig') do echo %%I でもいける
- 498 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 20:53:10 ]
- どんぐりの背比べ
- 499 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 21:55:38 ]
- すっぱい葡萄
- 500 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:33:10 ]
- skipがどうしたって?
- 501 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:04:04 ]
- フォルダを五十音で分配したいのですが、バッチファイルでできるんでしょうか?
1)具体的にはデジカメで写真を撮影した事を想定してください。 D:\デジカメ写真データ\001.jpg D:\デジカメ写真データ\002.jpg ・ ・ D:\デジカメ写真データ\009.jpg D:\デジカメ写真データ\010.jpg 2)それを撮影場所ごとに整理します。(ここまでは人間の手でやります。) D:\デジカメ写真データ\きんかくじ(金閣寺)\001.jpg D:\デジカメ写真データ\きんかくじ(金閣寺)\002.jpg D:\デジカメ写真データ\きよみずでら(清水寺)\003.jpg D:\デジカメ写真データ\きよみずでら(清水寺)\004.jpg D:\デジカメ写真データ\きよみずでら(清水寺)\005.jpg D:\デジカメ写真データ\とうだいじ(東大寺)\006.jpg D:\デジカメ写真データ\ほうりゅじ(法隆寺)\007.jpg D:\デジカメ写真データ\ほうりゅじ(法隆寺)\008.jpg D:\デジカメ写真データ\ほうりゅじ(法隆寺)\009.jpg D:\デジカメ写真データ\ほうりゅじ(法隆寺)\010.jpg 3)ここでバッチファイルをくりっくすると D:\読み順フォルダ\か行\きんかくじ(金閣寺)\001.jpg D:\読み順フォルダ\か行\きんかくじ(金閣寺)\002.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\003.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\004.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\005.jpg D:\読み順フォルダ\た行\とうだいじ(東大寺)\006.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\007.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\008.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\009.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\010.jpg とやりたいです。
- 502 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:08:36 ]
- D:\読み順フォルダ\か行\きんかくじ(金閣寺)\002.jpg
D:\読み順フォルダ\か行\きよみずでら(清水寺)\003.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\004.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\005.jpg D:\読み順フォルダ\た行\とうだいじ(東大寺)\006.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\007.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\008.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\009.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\010.jpg D:\読み順フォルダ\か行\きんかくじ(金閣寺)\002.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\003.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\004.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\005.jpg D:\読み順フォルダ\た行\とうだいじ(東大寺)\006.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\007.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\008.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\009.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\010.jpg D:\読み順フォルダ\か行\きんかくじ(金閣寺)\002.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\003.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\004.jpg D:\読み順フォルダ\か行\きよみずでら(清水寺)\005.jpg D:\読み順フォルダ\た行\とうだいじ(東大寺)\006.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\007.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\008.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\009.jpg D:\読み順フォルダ\は行\ほうりゅじ(法隆寺)\010.jpg
- 503 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:12:03 ]
- そこまで人の手でやれよ。
- 504 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:17:13 ]
- 写真を分類するソフトなら腐るほどある。
- 505 名前:デフォルトの名無しさん [2009/12/26(土) 12:57:24 ]
- ゴミの山(Dドライブ)を見てたらすんごいもの見つけたww
codepad.org/xzEwdV3R なんかかなり昔作ったVB風の記述でバッチファイルを吐く言語の ソースファイルっぽいw 今コンパイラ探してる
- 506 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:04:17 ]
- #EXPAND BatchBasic
Sub Main() Print("Hello World.") End Sub Sub Print(str) #NATIVE ECHO %str% End Sub
- 507 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:06:23 ]
- >>501
できるけど、その程度の代物だったら手作業と大して変わらん手間だろ。
- 508 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 14:48:26 ]
- >>505
batに生産性を求めてどうする
- 509 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 20:27:40 ]
- >>508
生産性がよくなるんだろ?
- 510 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 22:38:09 ]
- 管理者として実行されてるか?を判定するには?
- 511 名前:デフォルトの名無しさん [2009/12/27(日) 10:14:31 ]
- 管理者権限でしかアクセスできないフォルダにアクセスしてERRORLEVELで調べる
- 512 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 12:08:47 ]
- 環境変数比較してみたら管理者権限の場合SESSIONNAMEが定義されてなかったので
それで判別できる? (Vista x64で確認)
- 513 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 12:27:56 ]
- runas /trustlevel:制限しない rundll32 >nul
echo %errorlevel% ちゃんと動くかは分からない
- 514 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 14:35:24 ]
- echo>file
dir/q file
- 515 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 15:01:58 ]
- mklink a a
echo %errorlevel%
- 516 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:00:42 ]
- net user %username% |findstr "*administrators"
MS謹製のwhoamiに権限表示があった気がする
- 517 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 17:58:10 ]
- >>516
UACの昇格
- 518 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 22:26:55 ]
- >>512
Vista 32bit x86でも確認したよー
- 519 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 18:56:58 ]
- rundll32 shell32,IsUserAnAdmin
- 520 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 17:02:50 ]
- バッチファイルの引数をプラス記号で繋ぐにはどうしたら良いでしょう。例えば、
start "" iexplore "www.google.com/search?lr=lang_ja&ie=UTF-8&oe=UTF-8&q=%*" ここの %* を、引数の数に合わせて %1+%2+.... とやる方法です。
- 521 名前:デフォルトの名無しさん [2010/01/04(月) 20:39:55 ]
- codepad.org/w6ugNsAm
エスケープには対応してないから使えるのは英字だけなのでよろしく
- 522 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 20:42:43 ]
- もっとうまい方法がある気がしてならないのでちょっと晒してみる。
----------ここから set Param=%1 :loop if not "%2"=="" set Param=%Param%+%2 shift if not "%2"=="" goto loop start "" iexplore "www.google.com/search?lr=lang_ja&ie=sjis&oe=UTF-8&q=%Param%" ----------ここまで 細かい事考えなければこんな感じ? 引数を繋ぐスマートな方法を知りたいです。。。
- 523 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 20:44:47 ]
- つか誰かHttpEscapeってサブルーチンでも作って
- 524 名前:522 mailto:sage [2010/01/04(月) 20:48:01 ]
- >>521
そっか、先に shift させた方がずっと美しいや。 参考になりましたです。
- 525 名前:521 [2010/01/04(月) 21:06:29 ]
- いや、スマートにするのは簡単だけど、
codepad.org/GKyUSzKv なんかつまんないなあ。^^;
- 526 名前:522 mailto:sage [2010/01/04(月) 21:15:25 ]
- >>525
これこれ、こーゆーの求めてました! ありがとうございました >>521 、きっかけをくれた >>520 にも感謝。
- 527 名前:520 mailto:sage [2010/01/05(火) 00:22:01 ]
- >>521, 522
お二人ともありがとうございました。 特に >>525 が素晴しく、大変勉強になりました!!
- 528 名前:デフォルトの名無しさん mailto:sage [2010/01/05(火) 01:05:21 ]
- そもそもぐぐるなら置換不要
- 529 名前:デフォルトの名無しさん mailto:sage [2010/01/06(水) 18:02:19 ]
- そうなの?
- 530 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 19:19:39 ]
- 質問なんですが、
例としてimg001、img002、img003というファイルがあったとして imgに当てはまるものを一気に削除するというスクリプトはあるでしょうか?
- 531 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 19:36:16 ]
- delete img*
- 532 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 19:47:41 ]
- >>531
erase img*
- 533 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 20:56:26 ]
- >>531-532
「imgに当てはまるもの」→ del img
- 534 名前:530 mailto:sage [2010/01/11(月) 01:04:30 ]
- >>531-533
ありがとうございます。 delの場合は del img*でいけました。
- 535 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 01:16:52 ]
- >>531-533
おまえら質問に答えてない >>530 だれかが作ればある
- 536 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 07:58:08 ]
- 修飾子 %~$PATH: の使い方について質問があります。
引数のファイルを %PATH% から検索し、エクスプローラーで開く バッチファイルを書いてみました。 ---- open.bat ---- set x=%~$PATH:1 if %x% == "" goto eof start "" explorer.exe /select,%x% ---- 使用法: open.bat explorer.exe / open.bat cmd.exe / open.bat msconfig.exe ここで、拡張子を .exe に決め打ちし、下記が動作するようにするには どうすれば良いでしょうか。 open.bat explorer / open.bat cmd / open.bat msconfig
- 537 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 09:31:51 ]
- 下記のようにしてとりあえず希望の動作が出来るようになりました。
もう少し一般的な方法があれば教えて下さい。 ---- open_mod.bat ---- set x=%~$PATH:1 if not "%x%" == "" goto open for %%i in (%1.exe) do ( set x=%%~$PATH:i ) if not exist "%x%" exit :open start "" explorer.exe /select,%x% ----
- 538 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 14:54:18 ]
- for %%i in (%1.exe) do for %%j in (%~$PATH:1 %%~$PATH:i) do start "" explorer.exe /select,%%j
- 539 名前:デフォルトの名無しさん mailto:sage [2010/01/12(火) 18:41:21 ]
- for /f %%i in ('where %1') do start "" explorer.exe /select,%%i
- 540 名前:536 mailto:sage [2010/01/13(水) 00:43:51 ]
- >>538, 539
どちらもすごいです!! たいへん勉強になりました。
- 541 名前:デフォルトの名無しさん mailto:sage [2010/01/13(水) 10:54:58 ]
- >>539
これのうち、 'where %1' の部分が良く理解できません。 解説のあるウェブサイトを紹介してもらえないでしょうか。
- 542 名前:デフォルトの名無しさん mailto:sage [2010/01/13(水) 13:14:07 ]
- www.atmarkit.co.jp/fwin2k/win2ktips/1151where/where.html
- 543 名前:デフォルトの名無しさん mailto:sage [2010/01/13(水) 23:29:11 ]
- >>542
やっと理解しました。where は OS のコマンドで、 また for /f in %%変数 (...) の括弧内ではコマンドが使えるのですね。 情報ありがとうございました。
- 544 名前:デフォルトの名無しさん mailto:sage [2010/01/14(木) 23:23:03 ]
- %1 %2 ... は%*
%2 ... をまとめて取り出せないかな バラして組み立てるしかないかな
- 545 名前:デフォルトの名無しさん mailto:sage [2010/01/14(木) 23:26:37 ]
- shiftすりゃいいんじゃねーの
- 546 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 02:34:52 ]
- shift
echo %*
- 547 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 07:02:48 ]
- これだと %1 も出てくるな…
- 548 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 09:28:36 ]
- shift /2
- 549 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 13:11:40 ]
- for /f "tokens=1*"でとれるんじゃねーの
- 550 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 13:48:41 ]
- shiftじゃできないんじゃねーの
- 551 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 19:42:14 ]
- for /f "tokens=1*"じゃできないんじゃねーの
- 552 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 20:31:47 ]
- for /f "tokens=1*" %%i in (%*) do echo %j
- 553 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 21:44:02 ]
- for /f "tokens=1*" %%i in ("%*") do echo %j
だろ
- 554 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 11:29:18 ]
- この言語はforの使い方がおかしい
- 555 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 15:33:31 ]
- ワイルドカードを展開するコマンドにforという名前をつけてしまったのがそもそもの間違い。
- 556 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 16:13:29 ]
- for /f "tokens=1*" %i in ("1 2 3 4") do echo %j
2 3 4 ほれ
- 557 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 17:16:36 ]
- for /f "tokens=1*" %i in (""1 2" "3 4"") do echo %j
2" "3 4" ほれ
- 558 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 15:10:32 ]
- set a=%*
echo !a:%1=!
- 559 名前:デフォルトの名無しさん mailto:sage [2010/01/19(火) 10:25:24 ]
- @echo off
copy /y E:\Program\TAB_Browser\DonutRAPT\Default.dfg "E:\Back_Up\Donut_RAPT_Default" @echo exit 今使ってるバッチファイル(バックアップファイル作成)をまんま↑に載せました。 別段支障は無いのですが、↑だと、1ファイルのバックアップしか出来ませんので、 万一、空ファイルが上書きされてしまった場合、痛いです。 (上記のバッチはドーナツ派は何となくピンと来てくれると思いますが) そこで、そのリスクを減らす為に、例えば、バッチ処理する度に、ランダムに、例えば・・ Default1.dfg、Default2.dfg、Default3.dfg のいずれかのファイル名でE:\Back_Up\Donut_RAPT_Defaultフォルダにバックアップをするには どのようにすれば宜しいでしょうか?
- 560 名前:デフォルトの名無しさん mailto:sage [2010/01/19(火) 11:39:09 ]
- ランダムの意味わかってないだろ
- 561 名前:559 mailto:sage [2010/01/19(火) 11:52:46 ]
- 1〜3までの数字をアットランダムに付けたいのですが・・。
Default1.dfgというファイル名での保存が、複数回続いても構いません。 (きっちり、1→2→3という順番で、バッチ処理する度にファイル名が変わってくれなくて構わないです)
- 562 名前:デフォルトの名無しさん mailto:sage [2010/01/19(火) 14:36:05 ]
- set /a random=%random%%%3+1
copy /y E:\Program\TAB_Browser\DonutRAPT\Default.dfg "E:\Back_Up\Default%random%.dfg"
- 563 名前:559 mailto:sage [2010/01/19(火) 15:29:47 ]
- >>562
ありがとうございます! コピー先は直しましたが、まさに目的は叶いました。 本当、感謝です!
- 564 名前:デフォルトの名無しさん mailto:sage [2010/01/19(火) 18:15:40 ]
- >>560
>>560
- 565 名前:デフォルトの名無しさん mailto:sage [2010/01/19(火) 19:39:38 ]
- >>564
- 566 名前:デフォルトの名無しさん mailto:sage [2010/01/20(水) 13:48:59 ]
- サイクリック版作りたかったら作ってみ
- 567 名前:デフォルトの名無しさん mailto:sage [2010/01/23(土) 03:00:27 ]
- >>560
>>559の例の場合は3本のくじからの無作為抽出ってことだろ? ランダムって表現で間違っちゃいない っつーか、>>562が物語ってるじゃん↓ > set /a random=%random%%%3+1
- 568 名前:デフォルトの名無しさん mailto:sage [2010/01/23(土) 21:44:08 ]
- >>567
560は562が書かれる前にレスの内容がわかるエスパーなんですね。
- 569 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 05:15:14 ]
- 別に560の前の時点で、環境変数(%random%)を使えば良いのは判る訳で
そこへ560の質問の意味が解からん
- 570 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 12:43:25 ]
- iPod nano を購入しようと思っているのですが、nano のランダム再生について質問です。
現在使っている他メーカーのMP3プレイヤーのランダム再生はどうやら、 再生リストの中からランダムで選び出した曲を決まった順番で再生 しているらしいのです。 例えばフォルダの中にA,B,C,D,Eの5曲がある場合にランダム再生を実行すると、 自動的にA,C,Eを選び出し(ここは流石にランダムで選んでるようです)、 以降、A,C,E,A,C,E,...のように、同じ曲ばかりを繰り返します。 実際に少ない曲数で試したことはないのですが、 同じフォルダの中でランダム再生をしているとそのうち、 次に再生される曲がわかるようになるのでたぶん間違いないです。 で、iPod nano のランダム再生はどのような再生方法なのかに興味があります。 理想は、 ・一度流した曲は、再生リスト内の曲を全て再生するまでは再生しない。 というものです。 フォルダの中にA,B,C,D,Eの5曲がある場合、 最初にBを再生した後は、次に来る曲はA,C,D,Eのいずれかで、 次にAが選択された場合は、次に来る曲はC,D,Eのいずれか、といった再生法を望んでいます。 iPod nano の購入の参考にしたいので、 詳しくわかる方いましたらよろしくお願いします。
- 571 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 12:44:52 ]
- iTunesとiPodの場合「ランダム」ではなく「シャッフル」と呼び、
その呼び名の通り曲順をシャッフルして再生する機能になります。 1曲ごとに再生する曲を対象全体からランダムに選ぶのではなく、 最初に対象全体をシャッフルして混ざったリストを作りそれを順番に再生する、 つまりトランプをシャッフルしてから一枚づつめくっていく様な感じになり、 あなたの希望の様に 「一度流した曲は、再生リスト内の曲を全て再生するまでは再生しない。」 と言う状態になります。 iTunes上でプレイリストを選択した状態で左下のシャッフルボタンを 押してみると、リスト内でシャッフルしてそれを順に再生している事が よく分かると思います。 (その際画面表示のソート順を通常なら左端にある曲順の数字欄に しておかないとシャッフルされる様子が見れません。曲の上部に 「名前」や「アーティスト」、「アルバム」等と書いてある左端の部分を クリックして三角が出ている状態です。その灰色のバー部分の どこをどうクリックするかで画面上の並び順が変わります。) この様に「シャッフルされたリストを作る」と言う機能なので、そのリスト内で 曲を前や後ろに飛ばしてもまた同じ部分では同じ順番で再生されます。 シャッフル機能を切って入れ直すか、最初の曲から前に飛ばしたり、 最後の曲を終わりまで再生したりすればシャッフルし直されます。 自分は普段まずシャッフル再生はしないので、今ちょっと試してみた 結果を見て回答したので、何か間違いがあるかもしれません。
- 572 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 12:45:56 ]
- 回答ありがとうございます。
iTunesと同じなのであれば、 「再生回数」という項目もあるから、これでも確認できますね。 全部再生回数が0回の状態で再生し、 しばらくしてから再生回数を見て、飛びぬけて再生回数が少ない・多いものが無いことを確認する。 iTunesではメニューの方の「シャッフル」をよく利用します。 (下にシャッフルボタンがあるのは知らなかった…) 確かにこれは「リピートする」にチェックを入れておかないと、一巡したところで終了するので私の望んでいるタイプです。 まぁ重要なのは本当にiTunesとiPodの再生方式が同じなのか、というところですが、 同じじゃない方が不自然ですよね。 ありがとうございました。
- 573 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 12:47:04 ]
- iPodはiTunesを持ち歩く為に作られたものですから、基本はiTunesと同じだと思っていいと思いますよ。
コンピュータでのランダムは疑似乱数関数を利用しているのが一般的です。 疑似と頭に付くように実は完全なランダムではありません。与えるパラメーターが同じなら結果は全く同じになります。 実際の利用では、パラメーターに現在の時刻を1/100秒単位で指定します。 毎回再生ボタンをコンマ何秒の単位で全く同じく押すなんて事不可能ですから、同じ順番になることはなくランダムだと言って差し支えないでしょう。 > 同じ曲ばかりを繰り返します。 一般的にプログラム上では、順番は疑似乱数でランダムに決め、更に同じ曲が出ないようにする工夫もなされています。 実際にはランダムだけど、同じようなのを繰り返したり、次のが予想した通りだと思えるのは人間の特性が関係しています。 聞き流している時には好きな曲は印象が強く残りますが、そうではない曲は聴いても記憶に残りにくいものです。 ランダム再生していると、好きな曲ばかりが印象強く残って、前にも聴いたなとか、同じのばかりかかっているなと勘違いしてしまいます。 実際に聴いて確かめるのではなく、ランダム再生時の曲名を順番に書き出してみるとわかります。 聞き流していると錯覚してしまうし、時間もかかりますからね。 > A,C,E,A,C,E,...のように、同じ曲ばかりを繰り返します そういうプログラムがされている可能性も否定はできませんが、錯覚である可能性もあります。
- 574 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 12:48:00 ]
- 回答ありがとうございます。
>> 同じ曲ばかりを繰り返します。 >一般的にプログラム上では、順番は疑似乱数でランダムに決め、更に同じ曲が出ないようにする工夫もなされています。 基本的にどのメーカーでも、ランダム再生のロジックは同じはずだ、という意味でしょうか。 そうだと良いのですが。 自分もほんの少しだけプログラミングには触ったことがあるので、 完全なランダム再生は難しくないのになんでこのMP3プレイヤーはこうなんだ!とか一人で憤慨しています。 >> A,C,E,A,C,E,...のように、同じ曲ばかりを繰り返します >そういうプログラムがされている可能性も否定はできませんが、錯覚である可能性もあります。 確かめたわけじゃないので、確かに錯覚の可能性もあります。 それなのに言い張ったところで説得力は無いのですが、 「また同じ曲だ」「これはさっき聞いたばっかりだ」とか、曲単位で耳に残るのではなく、 曲Aがフェードアウトした後に始まるイントロは曲Cだ、という「つながり」が耳に残るんですよ。 そこから「いくつかの同じ曲を同じ順番で再生している」と思っています。 あくまで「思っている」です。 本題?のiPod購入は、前向きになっています。
- 575 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 12:49:04 ]
- >>569
俺は>>560が書かれてた時点でスレ見てスルーして次見たのが今だけど、 560の時点じゃ同感だったよ。ちゃんと読んでればいずれかと書いてるから 言葉の使い方間違ってるわけではないとわかるけれど。 流し読みすると 1→2→3 と要求してるように見えて ランダムって違うんじゃね?と思ったわな。 560=562だったとしても何も驚かんけどな。
- 576 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 12:50:06 ]
- >・一度流した曲は、再生リスト内の曲を全て再生するまでは再生しない。
自分の経験上ではそうなっていると思います。 もちろん、電源が完全にオフになるとどこまで再生していたかはリセットされますが、少なくとも連続して聞いている時に同じリスト内の曲が再度かかることはないですね。 iTunesで曲を追加したり並び順を替えてもiPod側の再生順は変わりますし、1度PCに接続すると同じプレイリストを先頭から再生しても順番が変わっているように思います。 ただし、iPodやiTunesの「ランダム」というのは「万遍なく」という意味ではなく「目茶苦茶」という意味ですので、同じアーチストの曲が連続したりすることもあれば、プレイリスト内の次の曲がそのまま再生されたりもします。文字通り「目茶苦茶」です。
|

|