ショートカットを作る PowerShell を書いてて、アイコンを指定しようと思った。
ふつうは、ico ファイルとか exe をそのまま指定するんだけろうけど、
今回は %SystemRoot%\system32\SHELL32.dll の中のアイコンを指定したかった。
ググりかたすらわからなかったけど、ひょんなことから発見。
"%SystemRoot%\system32\SHELL32.dll,-1"
とかで指定できるみたい。
これで安泰!と思いきや、欲しいアイコンの数字を指定してもアイコンが白いまま。
で、ためしに「-」を取ってみたらできた。
"%SystemRoot%\system32\SHELL32.dll,265"
アイコンの番号は、左上から右下に向かって 1 づつ増える。
数えるのが面倒だけど。
あと、「-」はつけなくてもいいみたい。
一応、54 まではつけてもうごくみたいだけど。(Windows 7 Home Premium 64-bit にて)
ちなみに、ショートカット作るには以下のコマンドを PowerShell で実行すれば OK
$wsh = New-Object -comObject WScript.Shell
$link = $wsh.CreateShortcut("C:\Users\Public\Desktop")
$link.TargetPath = "C:\Windows\notepad.exe"
$link.WorkingDirectory = "C:\Windows\"
$link.IconLocation = "C:\Windows\notepad.exe"
$link.Save()
ショートカットの引数は Save() を呼び出す前に以下の値を指定すれば OK
$link.Arguments = "なんちゃら"
2011年2月25日
2011年2月24日
今日 PowerShell で困ったこと。 -> Set-ExecutionPolicy の x86 と x86_64
PowerShell スクリプトを書いてて、ps1 ファイルの実行で困った。
ps1 ファイルはダブルクリックでは実行できなくて
powershell コマンドの引数とかで実行してやる必要がある。
この時、デフォルトではスクリプトの実行が制限されていて、
Set-ExecutionPolicy を RemoteSigned などに変更する必要がある。
http://www.atmarkit.co.jp/fwin2k/win2ktips/1023ps1sec/ps1sec.html
しかし、いくら変えたところで一向に Restricted から変わらない。
もちろん、管理者権限で PowerShell を起動している。
64bit 環境の PowerShell では、x86 版(上)と x86_64 版(下)の 2 つの PowerShell が存在する。
Windows PowerShell (x86) -> %SystemRoot%\syswow64\WindowsPowerShell\v1.0\powershell.exe
Windows PowerShell -> %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
この時、それぞれの PowerShell で Set-ExecutionPolicy の値は共有されてなく、別々に保存されている。
環境がある場合、片方だけ変えてみると、もう片方が変わらないことが確かめられる。
なので、PowerShell スクリプトを動かしたい場合は、
x86 と x86_64 の両方で Set-ExecutionPolicy RemoteSigned してあげると幸せ☆
ps1 ファイルはダブルクリックでは実行できなくて
powershell コマンドの引数とかで実行してやる必要がある。
この時、デフォルトではスクリプトの実行が制限されていて、
Set-ExecutionPolicy を RemoteSigned などに変更する必要がある。
http://www.atmarkit.co.jp/fwin2k/win2ktips/1023ps1sec/ps1sec.html
しかし、いくら変えたところで一向に Restricted から変わらない。
もちろん、管理者権限で PowerShell を起動している。
64bit 環境の PowerShell では、x86 版(上)と x86_64 版(下)の 2 つの PowerShell が存在する。
Windows PowerShell (x86) -> %SystemRoot%\syswow64\WindowsPowerShell\v1.0\powershell.exe
Windows PowerShell -> %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
この時、それぞれの PowerShell で Set-ExecutionPolicy の値は共有されてなく、別々に保存されている。
環境がある場合、片方だけ変えてみると、もう片方が変わらないことが確かめられる。
なので、PowerShell スクリプトを動かしたい場合は、
x86 と x86_64 の両方で Set-ExecutionPolicy RemoteSigned してあげると幸せ☆
2011年1月21日
今日 sudo で困ったこと。 -> php: command not found
こないだの cron に引き続き、今度は sudo の path で引っかかった。
どうやら、sudo では実行ユーザの path が引き継げないようだ。
http://mkosaki.blog46.fc2.com/blog-entry-792.html
http://d.hatena.ne.jp/japanrock_pg/20090527/1243426081
↓を .bashrc とか動かしたいシェルに貼り付けてあげる。
どうやら、
http://mkosaki.blog46.fc2.com/blog-entry-792.html
http://d.hatena.ne.jp/japanrock_pg/20090527/1243426081
↓を .bashrc とか動かしたいシェルに貼り付けてあげる。
export=/usr/local/bin:$ PATH alias PATH =" sudo env sudo =$ PATH " PATH
これとりあえずが通るけど、一番いい方法はなんなのか考えてみると面白そうかも。 path
2011年1月19日
今日困ったこと2。-> ssh: command not found
cron でスクリプトを回してて、外部のサーバに ssh でコマンドをたたきたかった。
普段の zsh では問題なく動くのに、cron だとコマンドが見つからない。
ssh が動くのに、見つからないってことはパスが通ってないと考えた。
でも、どこのパス?っていう疑問で考えたのが /bin/sh のパス。
シェルスクリプトの頭に
#!/bin/sh
を書いていたから、sh でパスが通ってないのかとおもったけど、どうもそうではなかった。
そうなると、シェルスクリプトの呼び出し元が怪しいので、crontab を調べることに。
パスが設定できることを思い出し、crontab がデフォルトで設定するパスを調べる。
sh-3.2$ cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
うん、見事にパスが通ってない。
原因がわかったので、自分の crontab にパスを通す。
sh-3.2$ crontab -e
PATH=/sbin:/bin:/usr/sbin:/usr/bin
↓
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
これでようやっと cron で ssh コマンドを実行することができた。
普段の zsh では問題なく動くのに、cron だとコマンドが見つからない。
ssh が動くのに、見つからないってことはパスが通ってないと考えた。
でも、どこのパス?っていう疑問で考えたのが /bin/sh のパス。
シェルスクリプトの頭に
#!/bin/sh
を書いていたから、sh でパスが通ってないのかとおもったけど、どうもそうではなかった。
sh-3.2$ which ssh
/usr/local/bin/ssh
sh-3.2$ echo $PATH
/usr/kerberos/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/java/jdk/bin:/usr/local/java/ant/bin:/usr/local/java/javacc/bin:/usr/local/java/jflex/bin
/usr/local/bin/ssh
sh-3.2$ echo $PATH
/usr/kerberos/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/java/jdk/bin:/usr/local/java/ant/bin:/usr/local/java/javacc/bin:/usr/local/java/jflex/bin
そうなると、シェルスクリプトの呼び出し元が怪しいので、crontab を調べることに。
パスが設定できることを思い出し、crontab がデフォルトで設定するパスを調べる。
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
うん、見事にパスが通ってない。
原因がわかったので、自分の crontab にパスを通す。
sh-3.2$ crontab -e
PATH=/sbin:/bin:/usr/sbin:/usr/bin
↓
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
これでようやっと cron で ssh コマンドを実行することができた。
今日困ったこと1。 -> (13)Permission denied: access to * denied
Apache いじってて 403 Forbidden が出てしょんぼり(´・ω・`)
Alias を conf ファイルに以下のような感じで書いてた。
ちょっと訳あって UserDir は使えない環境。
調べてみてわかったことは、
ということらしい。ほかにもあるかも。
自分の環境では SELinux は最初に無効化するので、可能性から除外。
2 をあたってみると、見事に 700 だったので、755 へ変えてアクセスできるようになった。
Alias を conf ファイルに以下のような感じで書いてた。
Alias /nananeko /home/nananeko/public_html
ちょっと訳あって UserDir は使えない環境。
調べてみてわかったことは、
1. SELinux が無効化されていない可能性
2. /home/your のパーミッションが 700 の可能性
ということらしい。ほかにもあるかも。
自分の環境では SELinux は最初に無効化するので、可能性から除外。
2 をあたってみると、見事に 700 だったので、755 へ変えてアクセスできるようになった。
2010年10月11日
数年ぶりの更新だが、大丈夫か?
Scala + Lift で CSS を上手に反映させる方法がわからなかったのでまとめ。
結論は /classpath/ っていうパスが
%PROJECT_LOC%/src/main/resources/toserve/ っていうところにアクセスできるので、
このパス以下に置くこと。それでちょこちょこ設定してあげれば OK。
使い方は下のように書く。
<link rel="stylesheet" href="/classpath/css/sidebar.css" type="text/css" />
んで、あとは Boot.scala の def boot 内に以下を書いて、css を読み込めるようにする。
ResourceServer.allow { case "css " :: _ => true }
んで、どういうときに問題かというと、templates-hidden/default.html に直接、相対パスで CSS ファイルを書いちゃうと、
ディレクトリが掘られたときに、templates-hidden/default.html で読み込んでくれないってのが困った理由。
Scala + Lift で CSS を上手に反映させる方法がわからなかったのでまとめ。
結論は /classpath/ っていうパスが
%PROJECT_LOC%/src/main/resources/toserve/ っていうところにアクセスできるので、
このパス以下に置くこと。それでちょこちょこ設定してあげれば OK。
使い方は下のように書く。
<link rel="stylesheet" href="/classpath/css/sidebar.css" type="text/css" />
んで、あとは Boot.scala の def boot 内に以下を書いて、css を読み込めるようにする。
ResourceServer.allow { case "
んで、どういうときに問題かというと、templates-hidden/default.html に直接、相対パスで CSS ファイルを書いちゃうと、
ディレクトリが掘られたときに、templates-hidden/default.html で読み込んでくれないってのが困った理由。
2007年11月7日
成長途中のオレが見出すべき真実(?
下の2つのエントリからオレが学んだこと。
成長する子供がまず知るべき事実
http://anond.hatelabo.jp/20071106010842
成長が止まった大人が思い出すべき事実
http://blog.livedoor.jp/dankogai/archives/50946019.html
「自分で考え、自分で決めなさい」
あとは、「また書き出すか、ブログ」
以上2点。
成長する子供がまず知るべき事実
http://anond.hatelabo.jp/20071106010842
成長が止まった大人が思い出すべき事実
http://blog.livedoor.jp/dankogai/archives/50946019.html
「自分で考え、自分で決めなさい」
あとは、「また書き出すか、ブログ」
以上2点。
2007年2月11日
誤変換を修正したい
風邪引き中です。
のどと鼻をやられております。
鼻セレブが欲しいところですね↓
今日は誤変換したときにわざわざ打ち直すのが面倒!
ということで、その場で簡単に直せる方法を紹介!
元はここ↓
http ://www.atmarkit.co.jp/fwin2k/win2ktips/843typing/typing.html
誤変換した直後に「CTRL + BACKSPACE」で再変換できるそうです!
これは便利。
ちなみにIMEかATOK環境の場合だそうです。
あ、ご入力は直らないのであしからずw
のどと鼻をやられております。
鼻セレブが欲しいところですね↓
今日は誤変換したときにわざわざ打ち直すのが面倒!
ということで、その場で簡単に直せる方法を紹介!
元はここ↓
誤変換した直後に「CTRL + BACKSPACE」で再変換できるそうです!
これは便利。
ちなみにIMEかATOK環境の場合だそうです。
あ、ご入力は直らないのであしからずw
2007年2月9日
Windowsのコマンドプロンプトからユーザを追加する
お久しぶりです。
先日、名古屋に行ってまいりました。
赤ふくがお気に入りですw
さて今日は、Windowsのコマンドプロンプトからユーザを追加する方法を紹介。
使うことがあまりないので以外と知らないかも。
実際にどうやって作るかというと
net user ユーザ名 [パスワード] /add
で制限付きユーザを作ることができます。
あとはバッチファイルなりでちょっと加工すれば大量のユーザを作り出すことができますね。
(まぁ、そんな必要はめったにないでしょうけど
ちなみにこの「net」コマンド、さまざまな場面で出てきます。
たとえば、ネットワーク回りの設定を変更するなど。
ヘルプを見るとサブコマンドの一覧がでてきます。
C:\>net /?
このコマンドの構文は次のとおりです:
NET [ ACCOUNTS | COMPUTER | CONFIG | CONTINUE | FILE | GROUP | HELP |
HELPMSG | LOCALGROUP | NAME | PAUSE | PRINT | SEND | SESSION |
SHARE | START | STATISTICS | STOP | TIME | USE | USER | VIEW ]
今回のnet user 以外にもサブコマンドはいろいろあるので使ってみてくださいw
先日、名古屋に行ってまいりました。
赤ふくがお気に入りですw
さて今日は、Windowsのコマンドプロンプトからユーザを追加する方法を紹介。
使うことがあまりないので以外と知らないかも。
実際にどうやって作るかというと
net user ユーザ名 [パスワード] /add
で制限付きユーザを作ることができます。
あとはバッチファイルなりでちょっと加工すれば大量のユーザを作り出すことができますね。
(まぁ、そんな必要はめったにないでしょうけど
ちなみにこの「net」コマンド、さまざまな場面で出てきます。
たとえば、ネットワーク回りの設定を変更するなど。
ヘルプを見るとサブコマンドの一覧がでてきます。
C:\>net /?
このコマンドの構文は次のとおりです:
NET [ ACCOUNTS | COMPUTER | CONFIG | CONTINUE | FILE | GROUP | HELP |
HELPMSG | LOCALGROUP | NAME | PAUSE | PRINT | SEND | SESSION |
SHARE | START | STATISTICS | STOP | TIME | USE | USER | VIEW ]
今回のnet user 以外にもサブコマンドはいろいろあるので使ってみてくださいw
2007年2月1日
メールの整理
普段からメールはフィルタリングしてて特にメールを探すのに困ったことはないのだけど
ちょっと便利そうなので以下の方法を少しためしてみることに。
The inbox makeover
どういうものかというと、
・7つのフォルダに分けて管理する
というもの。
で、分け方はhttp://www.ideaxidea.com/archives/2005/08/the_inbox_makeover.html
に載っているのでこちらを参考にしてください。

で、実際に使っているのは7つのうち6つ。
Holdってやつは仕事用とは別のアカウントで処理するので作りませんでした。
うん、見やすい!
あと、終えてないものを未読にしておくとメーラーによっては太字で表示されたりするので、
それくらいやることが残ってるかを判断する指標にもなっていいですね!
ちょっと便利そうなので以下の方法を少しためしてみることに。
The inbox makeover
どういうものかというと、
・7つのフォルダに分けて管理する
というもの。
で、分け方はhttp://www.ideaxidea.com/archives/2005/08/the_inbox_makeover.html
に載っているのでこちらを参考にしてください。

で、実際に使っているのは7つのうち6つ。
Holdってやつは仕事用とは別のアカウントで処理するので作りませんでした。
うん、見やすい!
あと、終えてないものを未読にしておくとメーラーによっては太字で表示されたりするので、
それくらいやることが残ってるかを判断する指標にもなっていいですね!
2007年1月17日
2007年1月13日
2007年1月12日
久々に。

あけましておめでとうございます。
久々にブログを書いてるわけですが、もともとの趣旨が
なんかやったことを残していくだったとおもったので、
ちょっとは真面目にやってみようかなと。
ここ最近、大学の授業でフローチャートの類を書くことが多いんですよ。
ただ、wordやペイントで書いていると日がくれそう・・・
そこで、おすすめなのがこれ。
graphviz (http://www.graphviz.org/)
どういうものかというと、DOT言語なるものを利用して、
テキストデータからフローチャートを書ける!っていうアプリケーションです。
たとえば、
digraph test{
a -> b
b -> c
a -> c
}
こんな感じでテキストをつくって、graphvizにかけます。
すると、
右上の図のようにイメージ(ipg、gif、png)などとして出力してくれるんです。
マウスでカチカチやってるよりはこっちのほうが早いですね。(ナナネコ的には
使い方は Graphviz チュートリアル(http://homepage3.nifty.com/kaku-chan/graphviz/index.html)
なんかがわかりやすかったです。
登録:
投稿 (Atom)

