スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
総合案内当ブログについて
Windowsの目次Linuxの目次Linuxの目次2・ ・自作PC関連の目次Web技術関連の目次
全記事一覧情報サイト新着RSS一覧

Sponsored Link

parted or fdisk

partedとfdiskは両方コマンドラインからHDDをパーティショニングできるツール。
両方使ってみたけど、こーいうのはすぐに忘れてしまうのでメモ。
フツーにLinuxをインストールしよー、ってときはGpartedとかディスクツールとかGUIでできるものが多々あるので、こっちのほうがわかりやすくて早いと思います。

参考
ディスクの準備(Gentooハンドブック)
HDDを増設する方法
GNU Partedの使い方

fdiskのほうがシンプルな感じを受けたけれども、2TB以上のパーティションは扱えないらしいので、大容量HDD使うなら自ずとparted一択になってしまいます。
今回はLMDE x64から一緒につないでいる250GBのあまりHDDをGentoo用(未定)にパーティショニングしてみます。

・fdiskの場合
-lを付けて現状確認。

# fdisk -l

Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d6e18

Device Boot Start End Blocks Id System
/dev/sdb1 2048 488396799 244197376 7 HPFS/NTFS/exFAT

Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xab0710b2

Device Boot Start End Blocks Id System
/dev/sdc1 * 63 204812684 102406311 7 HPFS/NTFS/exFAT
/dev/sdc2 204812685 1953523711 874355513+ 7 HPFS/NTFS/exFAT

Disk /dev/sda: 500.1 GB, 500106780160 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976771055 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000621f0

Device Boot Start End Blocks Id System
/dev/sda1 * 63 104454629 52227283+ 83 Linux
/dev/sda2 104454630 968382134 431963752+ 83 Linux
/dev/sda3 968382135 976768064 4192965 82 Linux swap / Solaris


今回のターゲットはdev/sdb。
sdaはLMDEの/ /home swapにそれぞれ、sdcはWindowsのC/Dにそれぞれ割り当てられています。
fdiskコマンドの後ろにターゲットのHDD(今回はdev/sdb)を指定してスタート。

# fdisk /dev/sdb

Command (m for help): p

Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d6e18

Device Boot Start End Blocks Id System
/dev/sdb1 2048 488396799 244197376 7 HPFS/NTFS/exFAT


入ってしまうとCommand (m for help): と出るので、ここで対話式でパーティションを切っていきます。
オプションやらはこんな感じ。

Usage:
fdisk [options] change partition table
fdisk [options] -l list partition table(s)
fdisk -s give partition size(s) in blocks

Options:
-b sector size (512, 1024, 2048 or 4096)
-c[=] compatible mode: 'dos' or 'nondos' (default)
-h print this help text
-u[=] display units: 'cylinders' or 'sectors' (default)
-v print program version
-C specify the number of cylinders
-H specify the number of heads
-S specify the number of sectors per track



今回はなぜか /dev/sdb1 2048 488396799 244197376 7 HPFS/NTFS/exFAT
と出たように、すでにNTFSでいっぱいいっぱいまで切ってある(たぶんWindowsからフォーマットしてそのまま忘れて放置していた)ので、これを削除。その上で/ /home用に2つ切ってみます。
d で削除して p で確認。

Command (m for help): d
Selected partition 1

Command (m for help): p

Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d6e18

Device Boot Start End Blocks Id System


消えましたね。
では次に n で新規にパーティションを切ります。
/用にとりあえず64GB。数字に意味はあまりありません。

Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-488397167, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-488397167, default 488397167): +64G


n で作成、Primary(物理パーティション)を選んで、Last sectorのところでサイズを指定。
Bootフラグをつけるには a を使います。

Command (m for help): a
Partition number (1-4): 1


a でBootフラグ付けたいパーティションナンバー(今回は1)を指定。

Command (m for help): p

Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d6e18

Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 134219775 67108864 83 Linux


先ほど作成した/dev/sdb1 のBootのところに*が付けば成功。
次に後ろのあまり分を/home用に

Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (1-4, default 2):
Using default value 2
First sector (134219776-488397167, default 134219776):
Using default value 134219776
Last sector, +sectors or +size{K,M,G} (134219776-488397167, default 488397167): +170G
Value out of range.
Last sector, +sectors or +size{K,M,G} (134219776-488397167, default 488397167): +150G


170GB にしたら容量オーバーになっちゃいましたね。150GBにしたら通りました。
というか一番後ろだからサイズ指定しなければよかったんじゃ!?
Swapを作るべきところでしょうが、LMDE用にsdaにSwapがあるのでこれはどうでも良い。
Swapを作る場合はもうひとつパーティションを切ってやれば良い。
pで確認したら wでDISKに書き込んで終了。

というわけでfdiskでsdb1 64GB(/用) sdb2 4GB(Swap) sdb3 残り全部(/home)を作って確認、書き込みまで行ってみましょう。

# fdisk /dev/sdb
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-488397167, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-488397167, default 488397167): +64GB

Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (1-4, default 2): 2
First sector (125002048-488397167, default 125002048):
Using default value 125002048
Last sector, +sectors or +size{K,M,G} (125002048-488397167, default 488397167): +4GB

Command (m for help): n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
Partition number (1-4, default 3):
Using default value 3
First sector (132814548-488397167, default 132814548):
Using default value 132814548
Last sector, +sectors or +size{K,M,G} (132814548-488397167, default 488397167):
Using default value 488397167

Command (m for help): a
Partition number (1-4): 1

Command (m for help): p

Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d6e18

Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 125002047 62500000 83 Linux
/dev/sdb2 125002048 132814547 3906250 83 Linux
/dev/sdb3 132814548 488397167 177791310 83 Linux


Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.


nで順番に作って、aでsdb1にブートフラグ、pで確認してwで終了となっています。
この状態でGpartedでみてみるとこんな感じ。
Screenshot from 2014-07-06 20:23:12ファイルシステムが不明、ですね。
このあとmkfsでファイルシステムを作らねばなりません。

せっかくなのでブランクを取り戻すべく/home予定のところはbtrfsにしてみます。
まずはsda1(/予定)をext4でフォーマット

# mkfs.ext4 /dev/sdb1
mke2fs 1.42.8 (20-Jun-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
3907584 inodes, 15625000 blocks
781250 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
477 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done


続けてsdb3をbtrfsにしようとしたところ

# mkfs.btrfs /dev/sdb3
The program 'mkfs.btrfs' is currently not installed. You can install it by typing:
apt-get install btrfs-tools
mkfs.btrfs: command not found


パッケージが別途必要らしい。

# sudo apt-get install btrfs-tools


してもっかい

# mkfs.btrfs /dev/sdb3

WARNING! - Btrfs v0.20-rc1 IS EXPERIMENTAL
WARNING! - see http://btrfs.wiki.kernel.org before using

fs created label (null) on /dev/sdb3
nodesize 4096 leafsize 4096 sectorsize 4096 size 169.55GB
Btrfs v0.20-rc1


あれ?エラー?
と思ったけれども
sdb2をSwapとして初期化してSwap on

# mkswap /dev/sdb2
Setting up swapspace version 1, size = 3906244 KiB
no label, UUID=7d90bbd0-8398-4141-82e7-0d40dfc26417
# swapon /dev/sdb2


してからGpartedで見てみると
Screenshot from 2014-07-06 20:45:30ちゃんとbtrfsとして認識されているようです。

・partedの場合
基本的には同じよーな感じです。実はデフォルトで入ってなかったのですが、aptで入ります。
partedの利点はファイルシステム一緒に作っちゃったり、データ入ってるパーティションのリサイズができたり、コピー、ペーストができたり、大容量のHDDでも問題なかったりすること。
その代わり若干コマンドがめんどい。
aptで入れて、同じくsdbを切ってみます。

# apt-get install parted
# parted /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)


こっちは(parted)の後ろにコマンド指定して使います。
一旦さっき作ったパーティションを削除してまた自由気ままに切っていきましょう。
printで現状把握

(parted) print
Model: ATA Hitachi HDT72102 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 1049kB 64.0GB 64.0GB primary
2 64.0GB 68.0GB 4000MB primary
3 68.0GB 250GB 182GB primary


削除するにはrm 、パーティション新規作成はmkpart にオプションをつけるなど。

(parted) m
align-check TYPE N check partition N for TYPE(min|opt)
alignment
check NUMBER do a simple check on the file system
cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER copy file system to another partition
help [COMMAND] print general help, or help on
COMMAND
mklabel,mktable LABEL-TYPE create a new disklabel (partition
table)
mkfs NUMBER FS-TYPE make a FS-TYPE file system on
partition NUMBER
mkpart PART-TYPE [FS-TYPE] START END make a partition
mkpartfs PART-TYPE FS-TYPE START END make a partition with a file system
resizepart NUMBER END resize partition NUMBER
move NUMBER START END move partition NUMBER
name NUMBER NAME name partition NUMBER as NAME
print [devices|free|list,all|NUMBER] display the partition table,
available devices, free space, all found partitions, or a particular
partition
quit exit program
rescue START END rescue a lost partition near START
and END
resize NUMBER START END resize partition NUMBER and its file
system
rm NUMBER delete partition NUMBER
select DEVICE choose the device to edit
set NUMBER FLAG STATE change the FLAG on partition NUMBER
toggle [NUMBER [FLAG]] toggle the state of FLAG on partition
NUMBER
unit UNIT set the default unit to UNIT
version display the version number and
copyright information of GNU Parted


まずはさっき切ったのを全部削除。
rm 1 rm 2 rm 3と実行してprintで見てみます。

# parted /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ATA Hitachi HDT72102 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 1049kB 64.0GB 64.0GB primary ext4
2 64.0GB 68.0GB 4000MB primary linux-swap(v1)
3 68.0GB 250GB 182GB primary btrfs

(parted) rm 1
(parted) rm 2
Warning: Partition /dev/sdb2 is being used. Are you sure you want to continue?
Yes/No? y
Error: Partition(s) 2 on /dev/sdb have been written, but we have been unable to
inform the kernel of the change, probably because it/they are in use. As a
result, the old partition(s) will remain in use. You should reboot now before
making further changes.
Ignore/Cancel? i
(parted) rm 3
Error: Partition(s) 2 on /dev/sdb have been written, but we have been unable to
inform the kernel of the change, probably because it/they are in use. As a
result, the old partition(s) will remain in use. You should reboot now before
making further changes.
Ignore/Cancel? i
(parted) print
Model: ATA Hitachi HDT72102 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags



これでまっさら!!

(parted) mkpart primary ext4 0 64GB
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? i
(parted) mkpart primary linux-swap 64GB 68GB
(parted) mkpart primary btrfs 68GB -1s
(parted) print
Model: ATA Hitachi HDT72102 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 512B 64.0GB 64.0GB primary ext4
2 64.0GB 68.0GB 3999MB primary
3 68.0GB 250GB 182GB primary


あるぇー?Swapとbtrfsが反映されてないぞー?
と思ってしばらく調べてたら
16.1 ディスク・パーティションについて
(parted) mklabel
あー、確かにgptにするとext4だけ、msdosにするとswapだけが反映される。
というわけで、何度か書き換えたけどmsdosで切って、パーティション1にbootフラグをたててみる

(parted) mklabel
New disk label type? msdos
Warning: The existing disk label on /dev/sdb will be destroyed and all data on
this disk will be lost. Do you want to continue?
Yes/No? y
(parted) print
Model: ATA Hitachi HDT72102 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags

(parted) mkpart primary ext4 0 64GB
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? i
(parted) mkpart primary linux-swap 64GB 68GB
(parted) mkpart primary btrfs 68GB -1s
(parted) set 1 boot on
(parted) print
Model: ATA Hitachi HDT72102 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 512B 64.0GB 64.0GB primary boot
2 64.0GB 68.0GB 3999MB primary linux-swap(v1)
3 68.0GB 250GB 182GB primary


ext4もbtrfsも反映されてないけど無事bootまでたってるのでpartedはこれで終了。
quitでpartedを抜けて、mkfsで1&3にファイルシステムを作成。

fdiskで切った後と同じく

# mkfs.ext4 /dev/sdb1
# mkswap /dev/sdb2
# mkfs.btrfs /dev/sdb3



ここでもっかいpartedで確認。

# parted /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ATA Hitachi HDT72102 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 512B 64.0GB 64.0GB primary ext4 boot
2 64.0GB 68.0GB 3999MB primary linux-swap(v1)
3 68.0GB 250GB 182GB primary btrfs


どうやらこれでちゃんと反映された模様。

Screenshot from 2014-07-06 22:12:45Gpartedで見ても大丈夫。

さて、ここまでやっといてなんですけど、みなさんHDDの用意とかってコマンドからやってるんですかね?
たしかにGUI環境がない場合にコマンドラインからパーティショニング、ファイルシステム作成や、パーティションのコピーとか覚えとけばかなり役に立つことはあるかとは思います。
でも、Gpartedのぬるま湯から始まった僕のLinux歴的には、GUIでのパーティショニングツールのほうがはるかにわかりやすくて早い。
そもそもここまで調べながらやるとなるとCUI環境のみでってのはちょっと怖いような気もします。パーティションの操作って一番「事故」起こしやすい気もしますし。
ただ、partedってのがある、とかmkfsの基本を覚えとけば役立つ時があるかもしれないなー、とは思いました。あと、Partedの方がもう少し親切&ファイルシステム対応が広がれば強いかなとか。

え?Gentooですか?それはまた後日気が向きましたら・・・
スポンサーサイト
総合案内当ブログについて
Windowsの目次Linuxの目次Linuxの目次2・ ・自作PC関連の目次Web技術関連の目次
全記事一覧情報サイト新着RSS一覧

Sponsored Link

今更コマンドを擁護してみるなど

コマンドだっていいとこたくさんあるんだよ!!
「コマンドって難しいじゃん」「コマンドって覚えなきゃいけないんでしょ?」「コマンド使えないとLinux使えないし」などなど、色々とあると思いますけれども、あえて今、コマンドを擁護してみます。
目的は、前の記事でチラッと触れたけど、コマンドに対する評価って二極化しすぎな感じがするから。
初心者にはいみふな怖い物、ベテランには一行で説明できるから教えるのに楽、大量のテキスト処理なんかが早い、などなど。
えぇ、僕はほとんど覚えてませんよ!!コピペばっかりです。空で打てるコマンドなど数えるくらいしかないですよ。
それでもコマンドが、各種GUIツールに比べて画期的な理由を述べましょう。

1.コピペができる。
これは画期的。いや、古い物に対して画期的、という言葉がふさわしいかどうかはまた別問題だが、気にしないで頂けると幸いです。
このコピペができる、というのは二重の意味でありがたいのです。
というのは
・操作コマンドをコピペで入力できる。
教えてもらったコマンドコピペしてEnter押すだけ。これは早いの当然。
メニューの「設定」から何々起動して、どのタブを開いて・・・とか、SS撮ってくれないと初心者にはいみふです。
え?コマンド自体がいみふ?えぇ、分かります。ここは後ほどフォローを入れてみます。
・操作の出力結果をコピペできる。
これはでかい。ベテランさんに相談するとき、なんかのアプリのテストでエラーログ送るとき、大活躍。
俺が出力結果を理解できなくてもモーマンタイ。
コピペしたのを見てくれた方に理解していただければそれでOK。なんらかの手段を講じてくれるでしょう。

・出力結果が見れるのでなんか安心。
上と若干かぶるけれども。
そのアプリなり、その操作が「裏で何をしてるのか」がわかる。これは安心。
挙動不審なものなどすぐに分かります?
いや、俺が分からなくてもいいんです。誰かが分かってくれれば。
で、そのうちにその出力結果がいつもと違う、などが分かればなおよい。
エラーが出た時も原因の特定に役立ちます。
え?エラーの意味が分かんないって?エラーコピペしてそのまま検索窓に突っ込んでGoogle先生にお願いしましょう。
世界中の誰かがきっと同じエラーに出くわしてるでしょう。
そのうちの誰かが回避方法を公開などしてるかもしれません。

・万国共通語
はい。これも大きいですね。
英語が読めない?なんかドイツ語のサイトが引っかかった?
それでもそこに書いてあるコマンドは万国共通なのです。
なんとなく、でも手順が理解できそうならば、あとはコピペしてEnter押すだけです。
いいんすよ。コードだけ理解できれば。中国でも、ハングルでも、アラブのどっかでも、コマンドは通じるのです!!
よって、語学力を身につける手間を省いて、世界の誰かのTipsを応用できるのです。

*ご指摘頂きました。「スペイン語圏のCLIはコマンド名がスペイン語に直されてたりするケースもある」とのこと。大抵のところは通じるけど、万国、ではないらしい。



・Xが吹っ飛んでもなんとかなったりしないこともない。
えぇ、たまーにありますね。画面が表示されない、ログインできないなどなど。
Xtermなら立ち上がるかも。そしてRecoveryModeならさらに立ち上がるかも。
とりあえず$ sudo apt-get update →$ sudo apt-get upgrade 。
誰かが同じバグに出くわしてたら、誰かがもう直してくれてるかもしれません。それを祈ってこの操作。
え?ダメだった?
じゃあGnome以外のデスクトップ環境入れたらとりあえず入れるかもよ。
$ sudo apt-get install lxde
$ sudo apt-get install kubuntu-desktop
$ sudo apt-get install fluxbox
Gnomeがおかしくなってもどれかでログインできるでしょう。
ログインできたらFirefoxが使える!!そうすれば何とかなる率は格段に跳ね上がります。
え?パッケージ名うろ覚え?Tabキーで補完すればなんとかなったりするもんですよ。
途中まで、うろ覚えのまま打って、Tab。これでなんとかなったりしますって。
え?aptしか覚えてないって?今、「man」だけ覚えてください。
んで、RecoveryModeなんかのXがない状況で、man apt-getとかって打ってみて。なんか説明出てくるから。
たぶんこれでいけるって。
大体そこまでの状況に陥ること少ないしな。

とまぁ、思いつく限りの「有効活用」を上げたりなど。
初心者的には、「そのコマンドの意味することがわからない」から不安なんですよね。
調べられる状況なら、教えてもらった、あるいは調べて見つかったコマンド、そのコマンド自体を検索かければ説明してるサイト引っかかりますよ。
たまーに、変な操作とか、割と危険な操作を何気なく教えられちゃったりもするので、調べられる状況があるならその「意味を知ってから」操作するのがいいんだけど。

そもそもオープンソースなLinuxは情報共有、って意識が強い方々がたくさんいらっしゃいますので、「入力、出力をコピペできる」ことで、思いっきり他力本願になれるのです。
まぁでも、普段使いではほとんど使わずに行けますけどね。
「コマンドが必須」というのはもはや神話、だと思います。
なんかあったとき、解決につなげやすいツール、として十分過ぎる利用価値はあります。

俺っすか?覚えたのは・・・apt-get,man,rm-rf,gedit,nano,cd,ls,./くらいじゃないっすか?2年近く使ってるというのに。
そんなもんでもなんとかなってるんですよ。あとはインストールしたアプリの名前適当に打ってみて、とか、そんなもん。パイプとかもういみふだし。
それでもなんとかなってる。αやβにまで手を出しているというのに、ね。

まぁ、いいとこもあるし悪いとこもある、単純な是非じゃ語れない。食わず嫌いはやめようよ、ってだけのお話。

関連記事
コマンドapt-getの便利な色々
dpkgの便利な色々
USBメモリ買ってきたのでとりあえずhdparmで速度測定
コマンドでファイル名一括変更
RecoveryModeからCatalyst再インストール
Linuxerに送るトラブル対応の心得
Ubuntu 9.04 「dpkg: サブプロセス post-installation script はエラー終了ステータス 1 を返しました」からの復帰
総合案内当ブログについて
Windowsの目次Linuxの目次Linuxの目次2・ ・自作PC関連の目次Web技術関連の目次
全記事一覧情報サイト新着RSS一覧

Sponsored Link

コマンドでファイル名一括変更

画像いじってるついでに発見したもの。
そういやコマンドでそのディレクトリ内のファイル名まとめて変更とかできたような・・・と思いつつ調べてみて。
Linuxでファイル名をまとめて変更するが分かりやすかったです。

まず、変更したいファイルorフォルダがあるディレクトリに移動。
$ cd /デスクトップ/Dancing-Miku0.3
lsでそのディレクトリのファイル一覧
$ ls
Hatsune-Dance-01.png Hatsune-Idling-04.png S-Hatsune-Dance-08.png
Hatsune-Dance-02.png Hatsune-Idling-05.png S-Hatsune-Dance-09.png
Hatsune-Dance-03.png Hatsune-Idling-06.png S-Hatsune-Dance-10.png
Hatsune-Dance-04.png Hatsune-Idling-07.png S-Hatsune-Idling-01.png
Hatsune-Dance-05.png L-Miku.mcpx S-Hatsune-Idling-02.png
Hatsune-Dance-06.png Miku.menu S-Hatsune-Idling-03.png
Hatsune-Dance-07.png S-Hatsune-Dance-01.png S-Hatsune-Idling-04.png
Hatsune-Dance-08.png S-Hatsune-Dance-02.png S-Hatsune-Idling-05.png
Hatsune-Dance-09.png S-Hatsune-Dance-03.png S-Hatsune-Idling-06.png
Hatsune-Dance-10.png S-Hatsune-Dance-04.png S-Hatsune-Idling-07.png
Hatsune-Idling-01.png S-Hatsune-Dance-05.png S-Miku.mcpx
Hatsune-Idling-02.png S-Hatsune-Dance-06.png
Hatsune-Idling-03.png S-Hatsune-Dance-07.png

ここで、例えばSってのをLに変更したいときは、
$ for file in *; do mv -i $file `echo $file | sed 's/S-Hatsune/L-Hatsune/'`; done
で置き換えれる。
全てのファイルの先頭にSizeとか入れたいなら、
$ for file in *; do mv -i $file `echo $file | sed 's/^/Size-/'`; done

ふむ。ぶっちゃけこの文字列は覚えられそうにないんですが、geditの検索、置き換えと同じような感じですね。
というかたぶんgeditがこの操作をGUI化してるだけなのかな?
こういうのはコマンドの得意分野かも。

関連記事
今更コマンドを擁護してみるなど
総合案内当ブログについて
Windowsの目次Linuxの目次Linuxの目次2・ ・自作PC関連の目次Web技術関連の目次
全記事一覧情報サイト新着RSS一覧

Sponsored Link

ブログ内検索

カスタム検索

フリーエリア

クリックで救える命がある。

レンタルサーバー

さくらのマネージドサーバ
さくらインターネットのVPS
ConoHaのVPS
WebARENA VPSクラウド
99円レンタルサーバー
【CloudCore VPS】
GMOクラウドのレンタルサーバー
転送量無制限 ABLENET
@WAPPYレンタルサーバー
SPPDレンタルサーバー

カテゴリー+月別アーカイブ

 

アクセスカウンター

現在の閲覧者数:

プロフィール

Author:tmin
PCヲタ。ライト2ちゃんねら。
スロット好きのギャンブラー。(元
むしろ人生がギャンブルだが目下のところ負けっぱなし。
座右の銘は「結果オーライ」。故に基本適当。
トラブルもまた楽しみのひとつ

コメント、トラバ、相互リンク歓迎。お気軽にどうぞ。
当ブログについて
Twitterでこっちとあっちの更新情報流すことにしてみます。
http://twitter.com/t_min
Project Mikunchu♪Wikiできました。
Mikunchu200x40.png


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。