如何在linux中自动创建目录?

时间:2017-04-18 04:54:09

标签: linux mkdir

我有一个名为 temp.txt 的文件,其中包含以下内容 https://abcdef/12345-xyz

https://ghifdfg/5426525-abc

我需要在linux中自动创建一个目录,只使用文件中每行的数字部分。 因此输出应该是 12345 5426525 目录。

任何有关如何做到这一点的方法都会有所帮助。

这是我从互联网搜索并获取的代码,其中此代码,新目录将由以BR和W0开头的文件名创建。

for file in {BR,W0}*.*; do
dir=${file%%.*}
mkdir -p "$dir"
mv "$file" "$dir"
done

1 个答案:

答案 0 :(得分:2)

假设每个网址的格式为

http[s]://any/symbols/some_digits-some_letters

然后你确实可以在shell变量扩展中使用简单的前缀和后缀修饰符。

${x##*/}扩展为x的后缀部分,该部分在最后一个斜杠/之后开始。

${y%%-*}在第一个y之前扩展为-的前缀部分。

while read x ; do
  y=${x##*/} 
  z=${y%%-*} 
  mkdir $z
done < temp.txt