Shell script to replace a part of filenames

I came across a situation I want to change a part of filenames.
I have many nvXXXX.nii files, and I want to change it to n1vXXXX.nii.
Below is the shell script I came up with.
The point is using sed.

#!/bin/bash
# A script to change a part of filenames.
for FILE in $*
do
  echo $FILE | sed -e "s/nv/n1v/" # This is optional. I just want to display the filenames on the monitor.
  mv $FILE `echo $FILE | sed -e "s/nv/n1v/"`
done

The below might be better if I want to use the new filenames as some variables.

#!/bin/bash
# A script to change a part of filenames.
for FILE in $*
do
  echo $FILE | sed -e "s/nv/n1v/"
  NEWFILE=`echo $FILE | sed -e "s/nv/n1v/"`
  mv $FILE $NEWFILE
done

openSuse 11.1 で Scan Snap S510は使えるか?

*昔に書いた内容ですが、検索でひっかかることが多いようなので、再度アップします。

確定申告の時期で、いろいろな書類のコピーをとるためにScansnapが大活躍しています。

Scansnapを導入したとき、Windowsマシンに様々なドライバをインストールしなければいけなかったので、Linuxでは使えないだろうなぁと勝手に思っていました。

しかし、何気なく”scansnap Linux”でググってみたところ、ubuntuでXSANEを使うとできちゃうみたいなことが書いてある記事を発見しました。

そこで、opensuse 11.1でできるかどうか確認。

xsaneのインストールの確認
YAST -> ソフトウェアの管理 -> xsaneで検索してみると、自分のマシンにはインストールされていました。

scansnap S510をつないでみる。
WindowsマシンにつながれていたS510のUSBコードをLinuxマシンに差し替えます。

どのように認識されるか確認
lsusb でUSBデバイスのリストを一覧で表示できます。

こんな出力がされました。

$lsusb

Bus 005 Device 002: ID 04c5:1155 Fujitsu, Ltd

対応の確認
次の2通りの方法があるかと。

SANEのサイトで確認
http://www.sane-project.org/sane-mfgs.html#Z-FUJITSU

ここには、

S510 USB 0x04c5/0×1155 Good workgroup, current, no TWAIN driver fujitsu
(1.0.55) sane-fujitsu
とかかれています。きちんと動きそうです。

/etc/sane.d/fujitsu.confを確認
$less /etc/sane.d/fujitsu.conf

最後の行にS510があります。

#scansnap S510
usb 0x04c5 0×1155

きちんと動きそうです。

xsaneの起動
メニューから、グラフィックの中にxsaneがあるので、それから起動。

感動したのが、ADFが両面も選べるようになっていること。

(ただし、その場合は、スキャン枚数(一番上の項目)を2以上に設定しなければいけません。)

ScanSnap本体の緑色ボタンは使えないものの、xsane経由で、普通にScansnapが使えるようになりました。

これで、Windowsに依存しなければいけない要素がまた一つ減りました。

それにしても、最近のLinuxは便利になりましたね。

Neurodebianのミラーサイト

このブログでも今までに紹介し、そしてLin4Neuroでも採用させていただいてきたNeurodebianですが、開発者のYarsolav Halchenkoといろいろやりとりした結果、日本でミラーサイトを立ち上げました。最近はファイルサイズの大きなものもありますので、日本からの場合、このミラーサイトを使っていただいたら、ダウンロード時間を短縮できる可能性があります。

方法を簡単に説明します。

まず、http://neuro.debian.netにいきます。

トップページにある、”How to use this repository”を見ます。

そこに、下図にあるような感じでDebianかUbuntuのリリースとダウンロードサイトを選ぶドロップダウンメニューが出てきます。

そこに出てくる2行を端末にコピペします。Ubuntu 12.04の場合は以下の2行になります。

wget -O- http://neuro.debian.net/lists/precise.jp | sudo tee etc/apt/sources.list.d/neurodebian.sources.list
sudo apt-key adv --recv-keys --keyserver pgp.mit.edu 2649A5A9

その後、apt-get updateと、apt-get upgradeを行い、さらにapt-get installで必要なソフトをインストールします。

それだけで設定はおしまいです。便利ですよね。

いろいろな画像解析関連ソフトが簡単にいれられますので、どうぞ利用してみてください。
日本語版Lin4Neuroでもこの日本のミラーサイトがデフォルトになっています。

How to install FSL on Ubuntu (up to 5.0.9)

N.B.: This is the old post. If you want to install the latest FSL (5.0.10 and later), you need to use fslinstaller.py.

If you use Debian or Ubuntu, you can install FSL easily using neurodebian repository.
Below is what you need to install FSL.

  1. Add the neurodebian repository
  2. Follow the guideline described here.

  3. update the sources.list
  4.         $ sudo apt-get update
            
  5. install FSL (and related packages)
  6.         $ sudo apt-get install fsl fsl-doc fslview fslview-doc fsl-atlases fsl-possum-data fsl-first-data fsl-feeds dicomnifti libvtk5-dev vtk-examples vtk-doc
            
  7. Add the following line to .bashrc
  8. This is the thing people often forget. Without this, you can’t run fsl from shell.

             . /etc/fsl/fsl.sh
             

    That’s it.

Windowsでコマンプロンプトが無効にされているときの裏ワザ

 知人にPCがおかしいから見てくれと相談され、見ました。コマンドプロンプトから確認しようと思ったところ、そのPCが管理されている職場のポリシーで、コマンドプロンプトが無効にされていました…。検索してもあまり方法はありませんでした。
 普通ならそこで諦めるところですが、なんか方法がないかなぁと思い、いろいろ試行錯誤してみました。
 非常に簡単な抜け穴がありました。

 それは、「ショートカットを作成する」という方法です。デスクトップ画面から右クリックで、「新規作成」→「ショートカット」とし、「項目の場所を入力して下さい」となっているところで、”cmd”とタイプします。そうすると、cmd.exeへのショートカットと出てきます。そこからコマンドプロンプトを立ち上げることができます。

 検索すると、Windowsには、コマンドプロンプト自体を無効にするというオプションもあるようですが、いろいろ抜け穴がありそうですね。逆にセキュリティ上はやはりもろいシステムということになるのでしょう。

 このブログでは、Windowsネタはほとんど扱わないと思いますが、気になったことだったのでアップしておきます。