UbuntuでXPSファイルをPDFに変換する方法

Windowsでは、PDFに対抗してXPS形式という形式でファイルを出力することができます。
今はMicrosoft OfficeならばPDFに直接書き出すことができますが、それ以外のソフトウェアでは、WindowsではAdobe Acrobatやその他のPDFに出力することができるソフトウェアを使わないと直接PDF出力ができません。その点、XPS形式ならばどんなソフトウェアからも出力することができます。

出張先で、プリンタがなく、アクセスできるWindowsにPDF出力機能がない場合、XPSをとりあえず出力して、
Ubuntu側でXPSをPDFに変えられるのではないだろうか?と思いました。

そうしましたら、見つけました。その名もxpstopdfというコマンドです。
これは、libgxps-utilsというソフトウェアに入っています。

インストールは簡単です。

$ sudo apt-get install libgxps-utils

使い方もいたって簡単です。
foo.xpsを変換したいならば、

$ xpstopdf foo.xps

で、foo.pdfが出力されます。

気をつけなければいけないのは、ワイルドカードは使えないということです。

xpstopdfの使い方が、

xpstopdf 入力ファイル [出力ファイル]

となっていて、出力ファイルの名前を変更したかったら、その後に書くようになっていますので、

もし、foo1.xps, foo2.xps という2つのファイルがあるとすると、

xpstopdf foo*.xps

は、xpstopdf foo1.xps foo2.xps

となり、foo2.xpsはファイル名こそXPSファイルですが、実質はfoo1.xpsをPDF化したファイルになってしまいます。

とにもかくにも、これで、WindowsのファイルはとりあえずXPSで書きだしておけばちょっとした工夫でPDFに変換できるということがわかりました。

Xubuntu14.04にIBM SPSS 22をインストールし、日本語の文字化けをなくす方法

Linuxで統計をやるならRを使えばいいじゃないと言われそうですが、
同僚がSPSSを多く使う場合、SPSSを動かせた方がいい時もあります。
ただ、インストールしてみたら日本語が文字化けして苦しみました。
ちょっとした工夫でクリアーできたので、ご紹介します。
ちなみに、SPSS_Statistics_22_lin_.binというファイルを使ってインストールしました。

続きを読む

Ubuntuでlessを使って構文をカラー表示する方法

viやgeditなどを使うと、シェルスクリプトなど、様々な構文を自動でカラー表示させることができて便利です。しかし、lessで表示させると白黒でわかりづらくなってしまいます。

そこで、lessでカラー表示する方法がないか調べたところ、様々な方がその情報を発信されていました。

  • とりあえず、解決法
  • 時間がない方は、以下の2つをやってください。

    まず、source-highlightをインストールします。

    $ sudo apt-get install source-highlight
    

    次に、以下の2行をホームディレクトリにある.bashrcに追加します。

    #Source-hilight with less
    export LESSOPEN="| /usr/share/source-highlight/src-hilite-lesspipe.sh %s"
    export LESS='-R'
    

    これを保存し、シェルを新しく起動すると、lessでシェルスクリプトが色付きで表示されるようになります。ちょっと感動です。

    私のサンプルスクリプトは下図のようになります。

    less_color

    ここまでなら、いくつもあるのですが、原典にあたってみたいということと、LESSとLESSOPENの意味を調べてみたので、少し紹介します。

  • 原典
  • この情報の出処は、GNU Source-highlightの解説サイトと考えられます。こちらになります。

    引用しておきます。

    This was suggested by Konstantine Serebriany. The script src-hilite-lesspipe.sh will be installed together with source-highlight. You can use the following environment variables:

    export LESSOPEN=”| /path/to/src-hilite-lesspipe.sh %s”
    export LESS=’ -R ‘

    This way, when you use less to browse a file, if it is a source file handled by source-highlight, it will be automatically highlighted.

  • 変数LESSの意味
  • 次に、LESS=’-R’の意味が何かを調べてみました。いろいろ調べたところ、lessのmanページの解説が一番しっくりきました。以下のように記載されています。

    -R または –RAW-CONTROL-CHARS
    -r と似ているが、可能な場合には画面表示を正しく維持しようとする。 このオプションが有効なのは、入力が通常のテキストの場合である。入力には ANSI の「カラー」エスケープシーケンスが含まれていてもよい。 このシーケンスは

    ESC [ … m

    のような形式で、”…” は “m” 以外の 0 個以上の文字である。画面の状況を保つため、 全ての制御文字と ANSI カラーシーケンスは カーソルを移動させないと仮定している。 less に “m” 以外の文字を ANSIカラーエスケープシーケンスの終了文字として認識させることもできる。そのためには、認識させたい終了文字のリストを 環境変数LESSANSIENDCHARS に設定すればよい。

    ここに「カラー」エスケープシーケンスとありました。
    どうもこれを指定することで、色がきちんと表示されそうです。
    ちなみに、これを指定しないとどうなるかやってみました。
    その結果は、一目瞭然です。

    less_bw

  • LESSOPENの意味
  • 次に、LESSOPENです。なぜ、最初にいきなりパイプが入っていたり、最後に%sがあるのでしょうか。これも、lessのmanページに記載がありました。引用します。

    入力プリプロセッサ
    less のための「入力プリプロセッサ」を定義することができる。 less がファイルを開く前に、入力プリプロセッサで 入力ファイルの内容の表示の仕方を変更することができる。 入力プリプロセッサに渡される。 入力プリプロセッサは、ファイルの内容を 代替ファイルと呼ばれる別ファイルに書き出す 単純な実行可能プログラム (もしくは、シェルスクリプト) である。 代替ファイルの内容がオリジナルファイルの内容の代わりに表示される。 しかし、ユーザーにとってはオリジナルファイルが開かれているかのように見える。less は現在の代替ファイルの名前としてオリジナルファイルの名前を表示する。

    入力プリプロセッサは、ユーザーによって入力される オリジナルファイル名を1 つのコマンドライン引き数として受け付ける。 そして、代替ファイルを生成し終えると、代替ファイル名を標準出力に表示する。 入力プリプロセッサが代替ファイル名を出力しない場合、less は標準としてオリジナルファイルを用いる。 入力プリプロセッサは、標準入力を閲覧する場合には呼び出されない。
    入力プリプロセッサを設定するためには、 入力プリプロセッサを呼び出すコマンドラインを環境変数 LESSOPENに設定する。このコマンドラインには、入力プリプロセッサコマンドが呼び出されるときに、ファイル名に置き換えられる文字列 “%s” を含んでいなければならない。

    ここで%sの意味が明らかになりました。最後の%sは、ファイル名を意味するのですね。

    その後に以下のような記載があります。

    ファイルのデータを代替ファイルに書き出さず、そのまま、less にパイプするような入力プリプロセッサを設定することも可能である。こうすることにより、閲覧する前に圧縮ファイル全体を展開するのが避けられる。このような働きをする入力プリプロセッサは、入力パイプと呼ばれる。 入力パイプは、代替ファイル名を標準出力に表示する代わりに、代替ファイルの内容全てを標準出力に書き出す。入力パイプが標準出力に何も書き出さない場合、代替ファイルは生成されず、less は普通にオリジナルファイルを使う。入力パイプを使う場合は、入力プリプロセッサが入力パイプであることを知らせるために、環境変数 LESSOPEN の最初の文字を、縦棒 (|) に設定する。

    つまり、LESSOPENの最初に指定するパイプ(|)は、入力プリプロセッサが入力パイプであることを明示しているわけですね。

    つまり、私の理解では、上記の2行によって、

    • ファイルをパイプで、src-hilite-lesspipe.shに渡す。%sは渡すファイル名を意味
    • 変数LESSに-Rを指定することによって、色のエスケープシーケンスを設定し、端末上に色が表示されるようにする

    ことを可能にしているわけですね。

掘り下げて勉強した結果、manページに当たることの大切さを再び学びました。

How to install official NVIDIA drivers on Xubuntu 14.04

(I wrote this post originally in Japanese, but this post may be helpful universally, so re-write in English.)

I got a new PC with NVIDIA GeForce GTX 750 Ti in December 2014.

At that time nvidia-current did not support GTX750Ti, so I needed to install drivers from nvidia website. However, some tweaks were needed to get things done, so I drop a note how to install NVIDIA drivers without much pain.

続きを読む

(筑波大関係者専用)Ubuntuで筑波大のVPNサービスに接続する方法

筑波大の学術情報メディアセンターはVPNサービスを運用してくださっています。
非常にわかりやすいマニュアルを提供してくださっていますが、残念ながら、Linuxのマニュアルはまだ提供されていません。

そこで、私の環境(Xubuntu 14.04)でOpenVPNを使ってうまくVPN接続に成功しましたので、備忘録を兼ねて書いておきます。

続きを読む

Ubuntu12.04以降に本家TeX Live 2014を簡単にインストールする方法

先日、私のシステムをXubuntu 12.04からXubuntu 14.04にアップグレードしました。
私はLaTeXに関しては、本家のTeX Live 2014を使っています。インストーラーは十分に使いやすいのですが、怠け者なので、より簡単にできないかと方法を探してみました。

なぜかというと、本家を使う場合、リンクにあるように、少し設定が必要だからです。

そのリンクをひとつずつ確認していたところ、ある方が、Ubuntu用の本家TeX Live 2014インストールスクリプトを公開しているということを知りました。

早速トライしてみたら便利だったので、紹介します。

続きを読む

Linuxにおけるハイフンの意味

ときどき、下記のような表現を見ます。

$ wget -O- http://www.example.com/example.gpg.key | sudo apt-key add -

この -Oのあとについているハイフンや、apt-key addのあとについているハイフンの意味をきちんと理解していませんでした。

改めて、調べたら、いろいろな方が解説してくれていました。

結論からいうと、

Linuxにおけるハイフンは、標準入出力をさす

のですね。

上記の例の場合、wget -O は本当はファイル名を引数にもつはずで、

wget -O file となるはずなんです。

でも、今の場合、-を指定することで、

wget -O- はその内容を、標準出力に表示するんですね。
今の場合は、example.gpg.keyが表示されるわけです。

で、上記の場合、さらにパイプがつながっていて、apt-key add -と続きます。
今回のハイフンは、今度は標準入力になるわけですね。

つまり、example.gpg.keyの内容が標準出力に出力され、
それがパイプで今度は標準入力になって、apt-key addの引数として使われるわけです。

となると、次と同じということですね。

$ wget -O tmpfile http://www.example.com/example.gpg.key
$ sudo apt-key add tmpfile
$ rm tmpfile

ハイフンを上手に使うことで一時ファイルを作ることなくパイプを使うことができるわけです。
スマートですね。

Xubuntu 14.04にNVIDIAの最新ドライバーをインストールする方法(Xubuntuをテキストモードで起動させる方法)

先日、新しいデスクトップマシンが職場に到着しました。
早速、Lin4Neuro-14.04をインストールしたところ、画面解像度が1280×1024までしかでなく、悲しいことに…。

グラフィックボードはNVIDIA GeForce GTX 750 Tiが搭載されています。

Ubuntuのnvidia-currentではまだ未対応であることから、本家のサイトからドライバーをインストールすることとしましたが、ひと手間だったので、その経過をまとめます。

続きを読む

Lin4Neuro based on Xubuntu 14.04LTS was released

I managed to customize Xubuntu 14.04LTS to be Lin4Neuro-14.04.

L4N-trusty-screenshot

For this customization I did the following;

  • .desktop files for neuroimaging analysis packages are stored in .local/share/applications
  • Neuroimaging.directory is stored in .local/share/desktop-directories.
  • Custom icons are stored in ~/.icons

If you look at these files, you will see how you can add your entries to menu.

I keep maintaining Xubuntu 12.04 because I am not certain Connectome mapper works in Xubuntu 14.04. If you want to use Connectome mapper, I recommend to use Lin4Neuro 12.04.

Grubで困った時にまずすること

先日、デュアルブートのマシンでXubuntuのアップデートをした時にGrubがアップデートされ、質問に適当に答えていたら、Grubのエントリーが消えてしまうという事件がありました。

Grubの設定をいろいろするのはめんどくさい、何かいい方法がないかなと探していました。
そうしたら、ありました。めんどくさがりにぴったりなコマンドが。

$ sudo update-grub

これで、システムに入っているOSを探し出し、自動でメニューにエントリーしてくれます。

ということで、Grubで困ったら、焦らず、まずはupdate-grubをタイプしてみてはどうでしょうか。

Making 2-up pdf files using pdfnup included in Tex Live 2014

I needed to make a 2-up pdf out of slide pdfs. That is, original slide pdf is landscape, and I wanted to put 2 slides in one page.

Googling led me “pdfnup”. Since I installed Tex Live 2014 on my machine, pdfnup was already installed.

So, I tried the following

$ pdfnup --orient portrait --nup 1x2 input.pdf

This resulted in error, which said

  pdfnup ERROR: the --orient option is not allowed,
  use --landscape or --no-landscape to specify
  the output page orientation</blockquote>

so I used –no-landscape option

$ pdfnup --no-landscape --nup 1x2 input.pdf

This made input-nup.pdf and that is 2-up pdf!

This tool is so useful for preparing handouts for presentation.

In addition to the above example, the author shows a nice example of how to produce a handout from a file of presentation slides.
For slides made with the standard 4:3 aspect ratio a nice 6-up handout on A4 paper can be made by

$ pdfjam --nup 2x3 --frame true --noautoscale false \
  --delta "0.2cm 0.3cm" --scale 0.95 myslides.pdf \
  --outfile myhandout.pdf

Linuxでfind, sedを使いながら文字列を再利用してファイル名の途中に文字列を挿入する方法

最近、以下のようなことをやる必要がありました。

ファイル名が

201105_ID.jpg
20120608_ID.jpg
20130704_ID.jpg
201409_ID.jpg

となっているファイル(年月が必ずあり、日が時についている)に対して、
年の後にアンダースコアを入れたい、つまり、

2011_05_ID.jpg
2012_0608_ID.jpg
2013_0704_ID.jpg
2014_09_ID.jpg

としたいわけです。

もし、最初の4文字が全く同一の文字列ならばただ置換すればよいので、全く問題ありません。
たとえば、すべて最初が2011からはじまるのであれば、
renameを使って、

find . -name '2011*' | rename 's/^2011/2011_/'

とするだけです。

しかし、今回は、4文字ということでは規則性がありますが、それぞれの中はバラバラの値です。

(ブログのコメントを受けて、ここを修正します。ちょうど2015年1月の正月に正規表現の勉強をしていたので、非常にタイミングのよいコメントをいただきました。松森様、どうもありがとうございます)

ただ、規則性はあります。最初は数字4文字、で、その後にアンダースコアを入れて残りの数字をいれたらいいわけです。

正規表現で、数字は\dで表すことができます。そして、繰り返し回数は{n}であらわせます。
今の場合、数字4桁は、\d{4}となるわけですね。

その後の数字は、\d+ とあらわすことができます。+は正規表現で1回かそれ以上ですから。

そして、最初の数字4桁のグループと残りの数字をそれぞれ()で2つのグループにわけます。

ファイルの最初は^であらわせますから、ファイルの最初の数字は以下のように表現できます。

(^\d{4})(\d+)

そして、前半のグループは$1、後半のグループは$2で表現できます。
今、グループ1とグループ2をアンダースコアで接続したもので置換したいので、
renameを使うと以下のように表現できます。

$ rename 's/(^\d{4})(\d+)/$1_$2/' 20*ID.jpg

これで一気に置換できます。正規表現でのグルーピングは慣れるととても強力ですね。
このようにネット上で教えてもらえるのはとてもありがたいことです。
完全に独学ですので…。

(以降はオリジナルの記事です)

いろいろ調べる中で、いくつかポイントが見つかりました。

  • findのオプション、-execを組み合わせる
  • findで合致したファイル名を再利用するには、{}を使う
  • sedにおいて検索で使った文字列を再利用するには、&を使う
  • bashで文字列を引数にとるためには、-cオプションを使う
  • find -execオプションは必ず;で終わらないといけないが、bashではエスケープシーケンスが必要になるために、必ず\;となる。

今回うまくいったワンライナーをご紹介します。(といっても上のワンライナーの方がずっとエレガントです。ただ、自分の学習過程を記録しておくことも意味があるので、残しておきます)

$ find . -name '201*' -exec bash -c "mv {} \`echo {} | sed -e 's/201./&_/'\`" \;

これを(あとで自分が忘れないために)もう少し解説します。

find . -name '201*'

この部分は、findの基本的な使い方です。
find <検索したい場所> -name <ファイル名> です。
ワイルドカードを使いたい場合は、シングルクオートかダブルクオートでくくらなければいけません。
*の場合は、どちらでも大丈夫です。

-exec bash -c

findのオプションで-execを使うと、コマンドを実行することができます。

今は、複雑なことをやりたいので、シェルを呼び出します。そのために、bashとしています。
man bashとすると以下のように書かれています。

オプション
bash は以下のオプションを起動時に解釈します (組み込みコマンド set の説
明で述べられている 1 文字のシェルオプションも使えます):

-c string -c オプションが指定されると、コマンドが string から読み込まれ
ます。 string の後に引き数があれば、これらは 位置パラメータ
(positional parameter: $0 からはじまるパラメータ) に代入され

今は複数のコマンドを読み込みたいので、-cオプションを指定します。

"mv {} \`echo {} | sed -e 's/201./&_/'\`" \;

これが今回のキモです。

まず、bash -cの後は文字列ですので、それを明記するために全体をダブルクオーテーションでくくっています。
そして、find -execの最後は;で終わるとなっているのですが、エスケープシーケンスが必要のために\;とします。

残るは mv {} \`echo {} | sed -e ‘s/201./&_/’\` です。

mv の後の{} はfindで見つかったファイル名を意味します。ここで、findの結果を利用できるわけです。

そして、\`echo {} | sed -e ‘s/201./&_/’\`

がmvの後半部分になります。これは全体がバッククオート`でくくられています。エスケープさせる必要があるために、\`となっています。

バッククオートの中を見ると、

echo {} | sed -e ‘s/201./&_/’

となっていて、先ほどと同様に{}はfindの結果を利用するわけで、echo {}で文字列を表示したうえで、それをsedを使って文字列置換をするわけです。

sedの文字列置換は正規表現を用いることができますので、検索文字列は2011,2012,2013,2014のいずれかですから、201.としました。
そして、その後が大事なのですが、sedの検索文字列をそのまま使える方法が、&となります。
今の場合、見つけた文字列の後にアンダースコアをつけたいので、&_としました。

これで無事にファイル名を変更することができました。数千のファイルをたった1行のコマンドで一気に変更できましたので、かなりすっきりしました。といってもここにたどり着くまでに数週間かかりましたが…。

bashでできる技なので、Linuxに限らず、Macでも同様にできるかと思われます。
ただ、これは我流でたどり着いた方法なので、もっとエレガントな方法がありましたら、ぜひ教えていただきたいです。

Update of Lin4Neuro (10 Aug 2014)

Lin4Neuro was updated. This time the change was limited to kernel update and security updates.

  • Kernel was updated to 3.13.0-32-generic.
  • All security updates were applied.

I’m working on Xubuntu 14.04, but it seems to have several problems with neuroimaging software packages. So for now I keep updating Lin4Neuro based on Xubuntu 12.04.

You can download the latest Lin4Neuro from here.

Workaround for Remastersys on Xubuntu 14.04

Remastersys is a very useful remastering tool though developing has ceased now.
Many reported that they could make Remastersys work on Ubuntu 14.04, but I encountered an error with Xubuntu 14.04.

I found workaround for this error.

Short answer: Comment out the line 245 of “/usr/bin/remastersys” beginning with [ “`grep lightdm /etc/X11/default-display-manager`” != “” ]

Below is the long answer.

  • Installation
  • Installation is simple.

    1. Import GPG key
    2. $ wget -O- http://www.remastersys.com/ubuntu/remastersys.gpg.key | sudo apt-key add -

    3. Add sources
    4. Add the line to /etc/apt/sources.list

      deb http://www.remastersys.com/ubuntu precise main

      Please note that you don’t have to replace “precise” with “trusty.”

    5. Installation
    6. $sudo apt-get update; sudo apt-get install remastersys

  • Error with “remastersys dist”
  • “sudo remastersys dist” terminated with error. The below is error message;

    $ sudo remastersys dist
    Distribution Mode Selected
    Enabling remastersys-firstboot
    Adding system startup for /etc/init.d/remastersys-firstboot …
    /etc/rc0.d/K20remastersys-firstboot -> ../init.d/remastersys-firstboot
    ……
    /etc/rc5.d/S20remastersys-firstboot -> ../init.d/remastersys-firstboot
    Checking filesystem type of the Working Folder
    /home/remastersys/remastersys is on a ext4 filesystem
    Making sure popularity contest is not installed
    Installing the Ubiquity GTK frontend
    Lightdm not setup properly. You must set your default desktop with lightdm prior to remastering

    I examined the script /usr/bin/remastersys with the keyword “Lightdm.” Then I found the description below in the line 245

    [ “`grep lightdm /etc/X11/default-display-manager`” != “” ] && [ ! -f /etc/lightdm/lightdm.conf ] && [ ! -f /usr/share/xsessions/ubuntu.desktop ] && echo “Lightdm not setup properly. You must set your default desktop with lightdm prior to remastering” && echo “Lightdm not setup properly. You must set your default desktop with lightdm prior to remastering” >> $WORKDIR/remastersys.log && exit 1

    Though this line checks if the file “/etc/lightdm/lightdm.conf” exists, The latest Xubuntu 14.04 doesn’t have that lightdm.conf file in /etc/lightdm.

    So I commented out this line, just adding “#” to the beginning of the line.

    Then I tried sudo remastersys dist again, with success!

    If you want to use Remastersys in Xubuntu 14.04, it’s worth trying it.

Update of Lin4Neuro (12 Jun 2014)

Lin4Neuro was updated. The changes of this version were as follows;

  • Kernel was updated to 3.13.0-29-generic.
  • ITK-SNAP was updated to 3.0.0.
  • MITK was updated to 2014.03.00.
  • MITK Diffusion was updated to 2014.03.
  • All security updates were applied.

Lin4Neuro is still based on Xubuntu 12.04. Now I’m working on Xubuntu 14.04, so hopefully the next version will be based on Xubuntu 14.04.

You can download the latest Lin4Neuro from here.

Linuxでファイル名の前後に文字を追加したい時の簡単な方法

ある方に、

ファイル名の最初に一括でzとつけたいのだけれども、どうしたらよいだろうか?

と質問されました。

たとえば、

001.jpg 002.jpg 003.jpg 004.jpg

をすべて

z001.jpg z002.jpg z003.jpg z004.jpg

としたいというような時です。

ここで、Linuxではrenameというコマンドを使います。

renameは以下の書式を知っていれば応用が効きます。

rename 's/置換前文字列/置換後文字列' ファイル名

この、’s/before/after’はviでの置換と同じ書式です。sはsubstituteの略です。

でも、今は置換ではなく、文字列を追加したいわけです。

こういう時、Linuxはたいしたもんだなと思うのですが、ファイルの頭は^という特殊文字で表現されます。
そして、ファイルの最後は$で表現されます。(正規表現ですね)

なので、今、ファイル名にzを追加したい時は、

「^をzに置換」してあげると考えるわけです。

したがって、以下のようになります。

rename 's/^/z' 00*.jpg

もし、ファイル名の最後に.oldをつけたかったら以下のようになります。

rename 's/$/\.old' 00*.jpg

なお、上で\.としているのは、.が正規表現で「任意の一文字」という意味を持っているからです。
単なる文字列として扱いたい時には、\をつけると、「正規表現でなく、単なる文字です」という意味になります。

^と$についての知識がちょっとあるだけで、ずいぶん楽になりますね。

Xubuntu12.04で問題なく動く無線LAN子機WN-G300U

Linuxでつまずきのひとつになるものに無線LAN子機があげられると思います。ネットを探しても情報は限られている印象があります。
動作するものとしないものとあり、動作しないといろいろ設定に苦しんでしまうというところがあります。私自身も以前かなり苦しんでいましたがうまくいかずにあきらめてしまっていました。

今回、オフィスの引越しに伴って自分の机がルーターから離れてしまったため、必要に駆られてXubuntuでも動作する無線LAN子機を探すことにしました。

ググったところ、こちらの記事を見つけました。Linux MintにI-O DATAのWN-G300Uシリーズが「何もせず」に動作したとのこと。

早速入手しました。

製品ホームページはこちら。2014年4月現在Amazonでは1763円で入手可能です。

それで、結果はどうかというと、

【何もせずに】動作しました!

USBにWN-G300を挿した状態でXubuntuを起動し、ネットワークのアイコンをクリックしたところ、普通にWi-fiのSSIDの一覧が表示され、自分がつなげたいSSIDを選択し、パスフレーズを入力するとあっさり接続です。

発売が2010年の機種ですが、現行で販売されていますので、Xubuntuで無駄な労力なくデスクトップで無線LAN環境を構築したい方にはおすすめの一品です。

Update of Lin4Neuro (13 March 2014)

I updated Lin4Neuro.
This time quite a few changes were made.

  • Many unnecessary software packages and fonts were uninstalled.
  • Connectome mapper was introduced. However, due to filesize and their licenses, freesurfer and Diffusion toolkit are not installed. I wrote a step-by-step guide how to install freesurfer and Diffusion toolkit on Lin4Neuro (the PDF file is found on the desktop), so afer you install these two software packages, you are ready to run Connectome mapper.
  • Kernel was updated to 3.5.

You can download the latest Lin4Neuro from here.

ファイル/ディレクトリ名に空白が入っているファイル/ディレクトリの空白を下線_に置換するワンライナー

ある方とやりとりしているなかで、Linuxにおいて、ファイル名に空白が入っているときにその空白を_に変換するスクリプトを紹介していただきました。

そういうのを知っているのは大事だなと思いまして、シンプルな方法がないかなと考えました。

そうしたら、renameを使えば比較的簡単に達成できることに気づきました。

以下は、カレントディレクトリ内にあるファイル/サブディレクトリ名に空白が入っているものを探し出し、空白を_に変換します。

$ find . -name "* *" | rename 's/ /_/g'

これを使えば空白の問題からおさらばできますね。

ちなみにrenameはsedと同じフォーマットでファイル名の一部を変更できます。

‘s/変換前の文字列/変換後の文字列/g’ で最後のgがあるとそのファイル名で合致するパターンすべてに対して変換してくれます。gがないと最初のパターンだけで置換を行います。

いろいろ教えてくれる方がいるのはとてもありがたいですね。

 

How to enable users to automount CD-ROM or USB in XFCE

I’m trying to install XFCE with ubuntu minimal iso (mini.iso).

With default settings, users are not able to mount CD-ROM or USB.

In order to change this, edit the following;

/usr/share/polkit-1/actions/org.freedesktop.udisks.policy

In the section “Mount a device”, change “allowed_any” and “allow_inactive” to “yes”.

<action id="org.freedesktop.udisks.filesystem-mount"><br /> <description>Mount a device</description><br /> <defaults><br /> <allow_any><strong>yes</allow_any><br /> <allow_inactive>yes</allow_inactive><br /> <allow_active>yes</allow_active><br /> </defaults><br /> </action>