Τα πάντα για το Bash...

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό learne/hack » 29 Ιούλ 2011, 00:06

Πως μπορώ να μάθω bash scripting..;;; Λένε πως είναι εύκολη γλώσσα.!!
Ευχαριστώ.! :)
Spoiler: show
1 Linux: Μέτριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Αρχάριος
2 Ubuntu 11.10 oneiric 64bit (el_GR.UTF-8), Ubuntu 3.0.0-14-generic, Windows 7
3 Intel Core2 Quad CPU Q9400 2.66GHz ‖ RAM 3963 MiB ‖ ASRock G31M-S
4 nVidia G92 [GeForce 9800 GT] [10de:0614] (rev a2)
5 eth0: Realtek RTL8101E/RTL8102E PCI Express Fast Ethernet controller [10ec:8136] (rev 02)
learne/hack
babeTUX
babeTUX
 
Δημοσιεύσεις: 25
Εγγραφή: 09 Οκτ 2009, 16:40
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό medigeek » 29 Ιούλ 2011, 00:35

Καλωσόρισες. :) Φτιάξε την υπογραφή σου όπως περιγράφεται εδώ: viewtopic.php?f=2&t=279

learne/hack έγραψε:Πως μπορώ να μάθω bash scripting..;;;

viewtopic.php?f=9&t=367
http://tldp.org/LDP/Bash-Beginners-Guid ... index.html
http://tldp.org/LDP/abs/html/index.html
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό giannosfor » 12 Αύγ 2011, 22:08

Προσπαθώ να φτιάξω ένα script όπου θα παίρνει τις φωτογραφίες από ένα φάκελο και θα δημιουργεί ένα φάκελο thumbs όπου μέσα θα έχει μετατρέψει τις φωτογραφίες σε ανάλυση 320 αλλά και 100 με την ανάλογη κατάληξη medium και small.
Το πρόβλημα το αντιμετωπίζω όταν πρέπει να μετατρέψω μία φωτογραφία που είναι "όρθια".
Για να μη ξεπεράσει το 240 το προσαρμόζει.
Δηλαδή σε μία φωτογραφία 428χ640 τη μετατρέπει σε 161χ240 ενώ θα ήθελα να είναι 320χ479
Θα ήθελα να αλλάξω το script ώστε ο δεύτερος αριθμός στην ανάλυση να προσαρμόζεται.
Αυτό είναι το script που έφτιαξα
Κώδικας: Επιλογή όλων
#!/bin/sh

mkdir thumbs
for file in `ls -l`
do
name=`echo $file | cut -f1 -d.`
convert -geometry 320x240 -quality 65 $file ./thumbs/${name}_medium.jpg
convert -geometry 100x100 -quality 50 $file ./thumbs/${name}_small.jpg
done
1 Γνώσεις Linux: Καθόλου ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 12.04 precise 3.2.0-58-generic 32bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.2.0-57-generic, Microsoft Windows XP Professional
3 Intel Core2 Duo CPU E4600 2.40GHz ‖ RAM 2012 MiB ‖ ASUS INC. P5Q - � P5Q
4 nVidia G94 [GeForce 9600 GT] [10de:0622] {nvidia}
5 eth0: Qualcomm Atheros AR8121/AR8113/AR8114 Gigabit or Fast Ethernet [1969:1026] (rev b0) ⋮ wlan0: 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
Άβαταρ μέλους
giannosfor
punkTUX
punkTUX
 
Δημοσιεύσεις: 297
Εγγραφή: 24 Απρ 2011, 20:24
Τοποθεσία: Ηράκλειο
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό medigeek » 14 Αύγ 2011, 22:39

Δηλαδή θέλεις να κρατήσεις το ίδιο width (πλάτος) 320 της εικόνας και να μην ξεπερνά το height (ύψος) 240;
Δοκίμασε με την εντολή mogrify -scale 320x240 ...
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό giannosfor » 15 Αύγ 2011, 22:17

Θέλω να προσαρμόσω τις φωτογραφίες που έχουν μεγάλη ανάλυση το πλάτος να γίνει 320 και το ύψος να προσαρμοστεί στο καινούργιο πλάτος.Το ύψος μπορεί να πάρει όποια τιμή θέλει αρκεί να μη παραμορφώνεται η φωτογραφία.Όπως το παράδειγμα,το πρόβλημα το αντιμετωπίζω σε φωτογραφίες που αρχικά το ύψος είναι μεγαλύτερο απ΄το πλάτος.
Οκ θα το δοκιμάσω :)
1 Γνώσεις Linux: Καθόλου ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 12.04 precise 3.2.0-58-generic 32bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.2.0-57-generic, Microsoft Windows XP Professional
3 Intel Core2 Duo CPU E4600 2.40GHz ‖ RAM 2012 MiB ‖ ASUS INC. P5Q - � P5Q
4 nVidia G94 [GeForce 9600 GT] [10de:0622] {nvidia}
5 eth0: Qualcomm Atheros AR8121/AR8113/AR8114 Gigabit or Fast Ethernet [1969:1026] (rev b0) ⋮ wlan0: 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
Άβαταρ μέλους
giannosfor
punkTUX
punkTUX
 
Δημοσιεύσεις: 297
Εγγραφή: 24 Απρ 2011, 20:24
Τοποθεσία: Ηράκλειο
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό giannosfor » 16 Αύγ 2011, 02:26

Ίσως στο script πρέπει να βάλω μεγάλη τιμή για το ύψος ώστε να το προσαρμόσει στο καινούργιο πλάτος που έχει τη μικρότερη τιμή.
Παράδειγμα.
Κώδικας: Επιλογή όλων
convert -geometry 320x1200
αλλά θα το δοκιμάσω μόλις γυρίσω.
1 Γνώσεις Linux: Καθόλου ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 12.04 precise 3.2.0-58-generic 32bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.2.0-57-generic, Microsoft Windows XP Professional
3 Intel Core2 Duo CPU E4600 2.40GHz ‖ RAM 2012 MiB ‖ ASUS INC. P5Q - � P5Q
4 nVidia G94 [GeForce 9600 GT] [10de:0622] {nvidia}
5 eth0: Qualcomm Atheros AR8121/AR8113/AR8114 Gigabit or Fast Ethernet [1969:1026] (rev b0) ⋮ wlan0: 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
Άβαταρ μέλους
giannosfor
punkTUX
punkTUX
 
Δημοσιεύσεις: 297
Εγγραφή: 24 Απρ 2011, 20:24
Τοποθεσία: Ηράκλειο
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό giannosfor » 20 Αύγ 2011, 16:48

giannosfor έγραψε:Ίσως στο script πρέπει να βάλω μεγάλη τιμή για το ύψος ώστε να το προσαρμόσει στο καινούργιο πλάτος που έχει τη μικρότερη τιμή.
Παράδειγμα.
Κώδικας: Επιλογή όλων
convert -geometry 320x1200
αλλά θα το δοκιμάσω μόλις γυρίσω.
Τελικά δούλεψε :thumbup:
1 Γνώσεις Linux: Καθόλου ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 12.04 precise 3.2.0-58-generic 32bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.2.0-57-generic, Microsoft Windows XP Professional
3 Intel Core2 Duo CPU E4600 2.40GHz ‖ RAM 2012 MiB ‖ ASUS INC. P5Q - � P5Q
4 nVidia G94 [GeForce 9600 GT] [10de:0622] {nvidia}
5 eth0: Qualcomm Atheros AR8121/AR8113/AR8114 Gigabit or Fast Ethernet [1969:1026] (rev b0) ⋮ wlan0: 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
Άβαταρ μέλους
giannosfor
punkTUX
punkTUX
 
Δημοσιεύσεις: 297
Εγγραφή: 24 Απρ 2011, 20:24
Τοποθεσία: Ηράκλειο
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό clepto » 27 Αύγ 2011, 01:36

θέλω να κάνω έλεγχο 2 στοιχείων με τον while αλλά δεν ξέρω πως να το γράψω
Κώδικας: Επιλογή όλων
while [ $answer != ν ] || [ $answer != ο ]
do
εντολες
done
έτσι δεν είναι σωστό ε;
πως είναι το σωστό;
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 13.04 raring 3.8.0-30-generic 64bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.8.0-19-generic, Windows 7
3 Intel Core i7-3537U CPU @ 2.00GHz ‖ RAM 3840 MiB ‖ ASUS K56CB
4 Intel 3rd Gen Core processor Graphics Controller [8086:0166] {i915}
5 wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01) ⋮ eth0: Realtek RTL8111/8168 PCI Express Gigabit Ethernet controller [10ec:8168] (rev 0a)
clepto
antiwinTUX
antiwinTUX
 
Δημοσιεύσεις: 4102
Εγγραφή: 07 Ιαν 2010, 16:27
Τοποθεσία: Πάτρα
Launchpad: christriant
IRC: Clepto
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό medigeek » 27 Αύγ 2011, 08:34

Μάλλον το πρόβλημα είναι το:
Κώδικας: Επιλογή όλων
$answer != ν

βάλε τα σε quotes:
Κώδικας: Επιλογή όλων
"$answer" != "ν"


Εμένα δουλεύουν τα παρακάτω:
Κώδικας: Επιλογή όλων
while [ 1 == 1 ] && [ 2 == 2 ]
do
echo "moo"
done


Κώδικας: Επιλογή όλων
while [ "maria" != "antonis" ] || [ "giannis" != "andreas" ]
do
echo "moo"
done


(ctrl+c για να σταματήσεις το loop)

Αν δεν είναι αυτό, μπορεί να μην εκτελείται ως bash, έλεγξε το με:
Κώδικας: Επιλογή όλων
echo $0


(έχεις βάλει ως πρώτη γραμμη το #!/bin/bash υποθέτω :) )
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Τα πάντα για το Bash...

Δημοσίευσηαπό clepto » 27 Αύγ 2011, 13:33

ναι ρε...
αυτό ήταν...ευχαριστώ! :)
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 13.04 raring 3.8.0-30-generic 64bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.8.0-19-generic, Windows 7
3 Intel Core i7-3537U CPU @ 2.00GHz ‖ RAM 3840 MiB ‖ ASUS K56CB
4 Intel 3rd Gen Core processor Graphics Controller [8086:0166] {i915}
5 wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01) ⋮ eth0: Realtek RTL8111/8168 PCI Express Gigabit Ethernet controller [10ec:8168] (rev 0a)
clepto
antiwinTUX
antiwinTUX
 
Δημοσιεύσεις: 4102
Εγγραφή: 07 Ιαν 2010, 16:27
Τοποθεσία: Πάτρα
Launchpad: christriant
IRC: Clepto
Εκτύπωση

ΠροηγούμενηΕπόμενο

Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι

cron