Добавление имен папок _Variable_ к списку файлов

Возможно, он мог бы работать с милым -dmg, он может читать довольно современную карту Apple _раздела _:

sudo apt-get install libfuse-dev cmake
git clone https://github.com/darlinghq/darling-dmg
mkdir darling-dmg-build && cd darling-dmg-build
cmake../darling-dmg
./darling-dmg disk_afs.bin mount_dir/

Если это не работает, исходный код достаточно читаем, возможно, вы сможете исправить его для своих нужд.

0
17.12.2019, 02:28
4 ответа

вот так:

#!/bin/bash

str=$(<file)

for i in $str; do
    if [[ $i =~ ^[A-F][A-Z][0-1] ]]; then
        echo "${i:0:2}/$i.jpg"
    fi
done

 Вывод

AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg
2
28.01.2020, 02:21

Попробуйте это,

awk '{for (i=1;i<=NF;i++) print substr($i,1,2)"/"$i".jpg" }' file.txt

AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg
  • forдля циклического просмотра каждого поля.
  • substringдля печати первых двух символов каждого поля.
1
28.01.2020, 02:21
perl -pne "s/ /\n/g" p| awk '{print substr($1,1,2)"/"$0".jpg"}' 

выход

AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg
0
28.01.2020, 02:21

Предполагая, что separated by record separatorsозначает, что ваши входные строки на самом деле разделены новой строкой -:

$ awk '/^[A-F][A-Z][0-1]/{print substr($0,1,2) "/" $0 ".jpg"}' file
AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg

Если нет, то с помощью GNU awk для мульти -char RS:

$ awk -v RS='[[:space:]]+' '/^[A-F][A-Z][0-1]/{print substr($0,1,2) "/" $0 ".jpg"}' file
AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg

или выберите любой awk:

$ awk -v RS=' ' '/^[A-F][A-Z][0-1]/{sub(/\n/,""); print substr($0,1,2) "/" $0 ".jpg"}' file
AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg

$ awk '{for (i=1;i<=NF;i++) if ($i ~ /^[A-F][A-Z][0-1]/) print substr($i,1,2) "/" $i ".jpg"}' file
AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg

$ tr ' ' $'\n' < file | awk '/^[A-F][A-Z][0-1]/{print substr($0,1,2) "/" $0 ".jpg"}'
AF/AF002.jpg
AI/AI003.jpg
AA/AA001.jpg
AD/AD005.jpg
AD/AD006.jpg
AI/AI002.jpg
0
28.01.2020, 02:21

Теги

Похожие вопросы