Nowe posty

xx Zewnętrzna karta wifi (1)
Wczoraj o 23:32:00
xx sieć domowa - zepsuty nautilus (1)
Wczoraj o 16:25:24
xx Skrypt ubijający usługę (3)
Wczoraj o 08:10:21
xx Laptop się nie wyłącza (31)
2018-06-18, 14:07:21
xx [ROZWIĄZANY] partycjonowanie dla brtfs (7)
2018-06-15, 17:10:26
xx [SOLVED] X Server nie działa po aktualizacji pakietów... (11)
2018-06-13, 23:41:25
xx [ Gra Za Darmo przez okreslony czas ] Ziggurat (0)
2018-06-12, 18:17:28
xx Linux Mint 19.Beta (18)
2018-06-09, 18:48:16
xx Streamowanie pulpitu i gier linux ubuntu na android (9)
2018-06-09, 17:38:36
xx zrobmikompa.pl - co myślicie o tej stronce (6)
2018-06-09, 16:42:47

Autor Wątek: zapis zmiennej do pliku  (Przeczytany 1271 razy)

Offline Thai

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 8
    • Zobacz profil
zapis zmiennej do pliku
« dnia: 2017-04-17, 16:31:26 »
Jaka instrukcje napisac w bashu zeby zapisac string znajdujacy sie w  "zmienna1" do innego pliku ale zeby zapisywalo kazda litere w nowej lini?
« Ostatnia zmiana: 2017-04-17, 16:53:18 wysłana przez Thai »

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 1916
  • 1709
    • Zobacz profil
Odp: zapis zmiennej do pliku
« Odpowiedź #1 dnia: 2017-04-17, 18:48:56 »
Możesz mi napisać w jaki sposób ty szukasz w google poradników ?

Ja robie to przykładowo tak:
bash zmienne
bash zapisywanie do pliku

Nie obraź sie, ale robie to celowo, bo mam wrażenie że znając podstawy użytkowania wyszukiwarki poradzisz sobie sam.
Generalnie jestem zdania że korzystając tylko z wyszukiwarki i poradników można pisać odrazu skrypty  bez znajomości tego języka.
Najpierw skrypty będą dość rozbudowane, z czasem nauczysz się zasad i z poradników jak je upraszczać.
Nie neguję że obędzie się bez pomocy, bo sam nie raz z pomocy korzystalem, ale chciałem podkreślić że
- bash jest prostym językiem
- masz dużo poradników
- możesz użyć prymitywne GUI ( gtkdialog , jad , dialog , zenity )
Zastrzeżeniem że
- Windows się do tego nie nadaje bo to generalnie na Linuxa jest stworzone. ( możesz używać Linuxa na virtualboxie )
- Większość poradników jest w języku angielskim, więc podstawy angielskiego znać też wypada, a reszte Ci pomoże google transaltor i wolontariusze.
 ( No chyba że wolisz płatne kursy, ja w to nie wnikam )

Nie wiem czemu Ci tak zależy na bash-u , ale jeśli jest to przyczyna czysto hobbystyczna i używasz tylko Windowsa to może zainteresuje Cię AutoIT
Z zastrzeżeniem że
- jest tylko na Windowsa
- i może na początku nie jest prosty, ale jak pojmiesz budowe większego skryptu, skąd bierzesz komendy i funkcje  oraz nauczysz się paru rzeczy to może stwierdzisz że jest to jeden z lepszych języków skryptowych na wspomnianą platforme. ( Myśle że jak ktoś by Ci pomógł to byś skrypty pisał już po 1 dniu nauki )
Oczywiście istnieją jezyki bardziej multiplatformowe które po których można znaleść pracę ( python, java, lua ) ale to też zależy od zastosowania,
lua jest używana ze względu na szybkość, python i java ze względu na zastosowanie bardziej internetowe.

PS: Jeśli Ci nie wychodzi to daj przykład jak to robisz, wtedy chętniej pomożemy, powiemy co było źle.
Pochwal się swoją kartą graficzną w tym wątku-->
http://forum.linux.pl/index.php/topic,19841.msg121122.html#msg121122

Offline Thai

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 8
    • Zobacz profil
Odp: zapis zmiennej do pliku
« Odpowiedź #2 dnia: 2017-04-17, 19:41:02 »
Dzieki za odpowiedz. Chodzi o to:
#!bin/bash
zmienna1="misz"
zmienna2="masz"
echo "$zmienna1" > ~/"$zmienna2.sh
Stworzylo plik o nazwie stringu ze zmiennej2 i wlało tam string ze zmiennej1
Nie moge wymyslec co zrobic aby string ze zmiennej1 zapisac w pliku od góry do dołu...czyli po kazdej literze wstawiajac znak nowej linii.
moze jakas operacja na tablicy?
« Ostatnia zmiana: 2017-04-17, 19:45:35 wysłana przez Thai »

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 1916
  • 1709
    • Zobacz profil
Odp: zapis zmiennej do pliku
« Odpowiedź #3 dnia: 2017-04-17, 20:50:44 »
1 . Mozesz użyć pętli

#!bin/bash

# zmienna
zmienna1="misz"


# Liczba znaków
aa=$(echo $[$(echo $zmienna1 | wc -m)-1])

# wc --help (powie wiecej)
# $[ ] (operacja matematyczna bo "misz" ma 4 znaki,a nie 5.




# petla for od od 1 do $aa
for i in `seq 1 $aa`
do

# wyswietlenie pierwszego znaku
ab=$(echo $zmienna1 | cut -c $i )


# zapisanie znaku do nowej zmiennej
ac=$( echo -e "${ac}\n${ab}"  )

done

# Wyswietlenie nowej zmiennej i usunięcie pustej lini, które tworzy echo.
 echo "$ac" | grep "\S"

2. Możesz jak ten gościu  http://stackoverflow.com/questions/9899049/placing-every-character-on-a-new-line
przykład w terninalu ( bez zapisywania do pliku )
$     zmienna_a=$(echo "misz" | sed 's/./&\n/g') ; echo "$zmienna_a"
m
i
s
z
Choć sed, awk do basha nie należą to się w bashu przydają.

3. Możesz   http://stackoverflow.com/questions/9531225/how-can-i-add-a-new-line-to-a-large-file-every-n-characters-in-terminal-one-lin
$       echo  "mania" | grep -oE '.{1}'
m
a
n
i
a
( tez bez zapisania do zmiennej czy pliku, jak chcesz do zmiennej to: zmienna=$(  ... ) )
Pochwal się swoją kartą graficzną w tym wątku-->
http://forum.linux.pl/index.php/topic,19841.msg121122.html#msg121122

Offline Thai

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 8
    • Zobacz profil
Odp: zapis zmiennej do pliku
« Odpowiedź #4 dnia: 2017-04-17, 21:10:46 »
Dzięki wielkie za pomoc !

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 1916
  • 1709
    • Zobacz profil
Pochwal się swoją kartą graficzną w tym wątku-->
http://forum.linux.pl/index.php/topic,19841.msg121122.html#msg121122