簡體   English   中英

目標目錄不存在時如何創建符號鏈接?

[英]How to create a symbolic link when target directory doesn't exist?

是否有一個標志可以添加到ln命令以強制創建目標目錄結構(如mkdir -p )。

考慮 :

ln -s /Applications/'Sublime Text.app'/Contents/SharedSupport/bin/subl /usr/local/bin/

它為 Sublime Text 命令行工具添加了一個符號鏈接。 但是如果 /usr/local/bin/ 不存在,它就會失敗。

我試過-f 'force' 標志,但這沒有幫助。

您是否需要在運行ln命令之前測試 /usr/local/bin/ 是否存在並創建它,如果它不存在,或者是否有更好的方法來做到這一點?

試試這樣,

mkdir -p  /create_your_path/ && xargs ln -s /link_file_path/file /create_your_path/

不, ln沒有標准選項來創建丟失的目標目錄。 ln之前使用installmkdir -p ,如果您發現不止一次需要它,可以在幫助腳本中使用。

#!/bin/bash -e
mkdir -p "${!#}"
exec ln -s "$@"

這顯然不是很健壯,但如果你認為你真的覺得它有用,可以隨意用更多的健全性檢查來修飾它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM