2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

lnコマンド

Last updated at Posted at 2025-07-21

はじめに

lnがリンクを貼る為のコマンドというのは多くの方がご存知と思いますが、特にCLIに馴染みが薄い方はあまり使いこなせていないように感じています。今回は、lnの挙動や使い方ではなく、私のよくやる活用法を幾らか紹介します。何となくlnを使うイメージができると幸いです。

WSL2でWindows側のdirにリンクを貼る

$ ln -s /mnt/c/Users/username/Documents ~/Documents

これでWindows側のDocumentsにWSL側のホームディレクトリから簡単にアクセスできるようになります。勿論DownloadsやVideosに対しても同じ事ができます。Windowsを使うときは基本的にWSL2上での作業なので助かってます。wget等を使ってwindows側に大量にファイルを落としてくることもできます。

fishの設定ファイルをホームディレクトリに置く

$ ln -s ~/.config/fish/config.fish ~/.fish

fishをメインで使っていてよく弄るのでvim ~/.fishで編集できると嬉しいです。aliasを設定しても良いのですが、個人的にはこっちを採用することが多いです。

gitでdotfilesを管理し、リンクを貼る

$ ln -s ~/dotfiles_repo/.vimrc ~/.vimrc
$ ln -s ~/dotfiles_repo/.bashrc ~/.bashrc

stow使う人もいるかもしれません。

スクリプトのコマンド化

$ ln -s ~/project/run.sh /usr/local/bin/myscript
$ myscript

スクリプトを何処からでもコマンドとして名前だけで叩けるようになります。シェルスクリプトでなくても実行可能ファイルなら何でも良いです。かなり頻度は高め。

ROS2のバージョンを変える

# .bashrc
source ~/ros2_current.bash
$ ln -sf /opt/ros/humble/setup.bash ~/ros2_current.bash # to humble
$ ln -sf /opt/ros/jazzy/setup.bash ~/ros2_current.bash # to jazzy

書き換えないのでgitで同じ.bashrcを管理できるのが良いですね。

パラメータを読む用のYAML切り替え

$ ln -sf config/robotA.yaml config/current.yaml
$ ln -sf config/robotB.yaml config/current.yaml

なんだかんだよく叩くのでJustfileやシェルスクリプトからすぐ切り替えられるようにしてます。

ログ無効化

$ ln -snf /dev/null ~/ros_ws/log

普通やりません。

おわりに

systemd-timerで日ごと、一定時間ごとにシェルスクリプト走らせてニュースか何か取ってきたり、ログとか記録してDesktopにリンク置いとくとか、ありかなって思いました。発想次第で色々できると思います。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?