LINUX.ORG.RU
решено ФорумAdmin

Ruby, Bash и find

 , ,


0

1

Здравствуйте!

Есть строка str:

irb
irb(main):001:0> str = %x(find "/NV" -name "*.txt" -print0)
=> "/NV/EFI_UUID.txt\u0000/NV/EFI_UUID_little-endian.txt\u0000/NV/nvram.txt\u0000/NV/nvram1.txt\u0000"
irb(main):002:0> exit
Надо разбить строку str на подстроки (где в качестве разделителя используется «\u0000») и поместить их в массив arr.

Как это сделать? (Если что, то я — Newbie).

Заранее благодарен за помощь!

https://ruby-doc.org/core-2.2.0/String.html#method-i-split почитал бы хоть какую нибудь книжку про руби, это же элементарные вещи, тебе бы намного проще стало.

На entefeed не обращай внимания он упоротый фанатик питона.

TDrive ★★★★★
()
Последнее исправление: TDrive (всего исправлений: 1)
Ответ на: комментарий от entefeed

А что не так? И что вы предлагаете взамен Ruby для написания скриптов? Есть ещё старичок Perl, но он теряет популярность с каждым годом всё больше, и Python. Как по мне, Ruby куда приятней чем Python.

lucentcode ★★★★★
()
Ответ на: комментарий от entefeed

Что сказать хотели? RoR не нужен.

ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin13]

Cave-Canem
() автор топика

Силами bash:

cat test 
/NV/EFI_UUID.txt\u0000/NV/EFI_UUID_little-endian.txt\u0000/NV/nvram.txt\u0000/NV/nvram1.txt\u0000

for i in $(cat test | tr '\\u0000' '\n'); do arr1+=($i); done
echo ${arr1[@]}
/NV/EFI_UUID.txt /NV/EFI_UUID_little-endian.txt /NV/nvram.txt /NV/nvram1.txt
Niroday
()
Ответ на: комментарий от entefeed

Так ты же не просто пользуешься, ты еще и активно устраиваешь срачи с «неверными» или к чему был твой высер во втором посте?

TDrive ★★★★★
()
Ответ на: комментарий от Niroday

Нет, разделитель - не строка \u0000, а нулевой байт. Если я не ошибаюсь, в переменные окружения или командной строки безопасным образом нулевой байт поместить нельзя (ну, только в конец, разве что).

anonymous
()
Ответ на: комментарий от entefeed

Если я пользуюсь чем-то еще не значит что я фанатик этого чего-то, окда?

Если ты при этом бросаешься на тех, кто пользуется другими инструментами — то таки фанатик.

theNamelessOne ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.