Εμφάνιση 1.156-1.170 από 2222
Θέμα: Ερώτηση για bash
-
23-02-17, 20:02 Απάντηση: Ερώτηση για bash #1156"I like offending people, because I think people who get offended should be offended" - Linus Torvalds
"Παλιά είχαμε φτωχούς οι οποίοι ζούσανε σε φτωχογειτονιές. Τώρα, η οικονομικά δυσπραγούσα τάξη
κατέχει στέγες υποδεέστερης ποιότητας σε υποβαθμισμένα αστικά κέντρα" - George Carlin
Γα.... την πολιτική ορθότητα.
-
23-02-17, 22:38 Απάντηση: Ερώτηση για bash #1157
Εγώ που φοβάμαι πολύ την rm -rf , συνήθως αν θέλω να σβήσω κάτι το τρέχω πρώτα δοκιμαστικά με find + echo ως εξής:
Κώδικας:find <directory>/* -exec echo {} \;
Κώδικας:find <directory>/* -exec rm {} \;
Κώδικας:find ~/.kodi/userdata/Thumbnails/* -exec echo {} \; find ~/.kodi/userdata/Thumbnails/* -exec rm {} \;
1. Με κάνει να νιώθω μια υποτυπώδη ασφάλεια και μικραίνει σε κάποιο βαθμό την πιθανότητα να σβήσω κάτι κατά λάθος
2. Είναι αρκετά πιο ευέλικτη από την rm γιατί μπορείς να προσθέσεις την παράμετρο -name που φιλτράρει τα αποτελέσματα με βάση το filename.
3. Είναι μία εντολή που μου έχει φανεί απίστευτα χρήσιμη όσο καιρό παίζω με linux και τη χρησιμοποιώ συνέχεια έτσι κι αλλιώς, και νομίζω καλό είναι να τη γνωρίζει κανείς.
- - - Updated - - -
4. Μπορείς να βάλεις ό,τι εντολή θες μετά το -exec! (παραλίγο να ξεχάσω ένα από τα πιο δυνατά σημεία της find...)
-
24-02-17, 09:01 Απάντηση: Ερώτηση για bash #1158
Δεν γινεται να το κανω με μια εντολη μια κι εξω? Ρωταω επειδη το σκριπτακι που εκτελει το openelec στην εκκινηση, εκτελει τα οσα βλεπει γραμμη γραμμη. Πχ
Κώδικας:rm .kodi/userdata/Thumbnails/*
ديميتريس
-
24-02-17, 09:58 Απάντηση: Ερώτηση για bash #1159
-
24-02-17, 10:12 Απάντηση: Ερώτηση για bash #1160
Αν κανω
Κώδικας:rm -r .kodi/userdata/Thumbnails/*
ديميتريس
-
24-02-17, 10:29 Απάντηση: Ερώτηση για bash #1161
Όχι. Γιατί το wildcard κάνει glob στα files μέσα στον φάκελο Thumbnails και όχι στον ίδιο τον φάκελο. Αν έδινες `rm -r .kodi/userdata/Thumbnails*` (χωρίς το / στο τέλος του directory), τότε θα το ξήλωνε ολόκληρο.
Κάνε και δοκιμή να δεις. Π.χ.Κώδικας:mkdir -p ~/todelete/dir{1,2,3} && touch ~/todelete/file{1,2,3}
Κώδικας:rm -rf ~/todelete/*
Richard Stallman: "I see you are being your usual friendly self ;-}."
Theo de Raadt: "Yes, and you are being the usual slimy hypocritical asshole."
-
24-02-17, 10:56 Απάντηση: Ερώτηση για bash #1162
Οντως δουλευει οπως πρεπει. Ευχαριστω
ديميتريس
-
24-02-17, 18:37 Απάντηση: Ερώτηση για bash #1163
@guardianhelm: Αντί για -exec rm, μπορείς να κάνεις κατευθείαν -delete. Υποστηρίζεται εδώ και χρόνια από τη find
Όταν ενώνουμε τις δυνάμεις μας, μπορούμε να πετύχουμε το ακατόρθωτο - Παναγιώτης Γιαννάκης
Never say never, because limits, like fears, are often just an illusion - Michael Jordan
-
24-02-17, 20:29 Απάντηση: Ερώτηση για bash #1164
Το έχω υπόψη μου, ευχαριστώ
Ανέφερα την -exec επειδή είναι ακριβώς το ίδιο syntax που χρησιμοποιείς για την echo οπότε είναι λίγο πιο εύκολο να επιβεβαιώσεις ακριβώς τι σβήνεις. Στην πράξη μάλλον δεν έχει κάποιο νόημα να το κάνει κανείς όπως λέω, απλά ικανοποιεί την παρανοϊκή πλευρά του εαυτού μου που ποτέ δεν θα νιώσει αρκετά άνετα με την κονσόλα και το μη αναστρέψιμο της rm
Αλλά ακόμα κι έτσι το dry run που περιέγραψα μάλλον είναι ισοδύναμο με το
find <directory> -print
find <directory> -delete
που είναι και πιο αποδοτικά
-
08-05-17, 20:31 Απάντηση: Ερώτηση για bash #1165
Ειπα να δοκιμασω αυτο εδω το σκριπτακι
https://github.com/marguerite/linux-...g_wallpaper.sh
Αλλα οταν το τρεχω μου λεει
Κώδικας:$ sh bing_wallpaper.sh bing_wallpaper.sh: 7: bing_wallpaper.sh: Syntax error: "(" unexpected
ديميتريس
-
08-05-17, 21:00 Απάντηση: Ερώτηση για bash #1166
Το πρόβλημα είναι στη γραμμή 7
Από εδώ:
You're using the wrong syntax to declare functions. Use this instead:
Κώδικας:contains() { # Function }
Κώδικας:function contains { # function }
- - - Updated - - -
Επίσης φταίει που τρέχεις το script με απλό sh.
Το shebang το ορίζει ως bash script αλλά εσύ το κάνεις bypass. Είτε κάνε τις αλλαγές που σου είπα και άλλαξε το shebang σε #!/bin/sh, είτε (πιο σωστά) τρέξε το ως:
Κώδικας:/bin/bash bing_wallpaper.sh
Κώδικας:chmod +x bing_wallpaper.sh ./bing_wallpaper.sh
-
09-05-17, 07:38 Απάντηση: Ερώτηση για bash #1167
Αυτο ηταν, ηθελε bash. Μου εχει ξανατυχει ακομα 1-2 φορες παλιοτερα. Αλλα γιατι το κανει, αφου το bash ειναι οντως το shell που χρησιμοποιει ο χρηστης μου?
Κώδικας:$ echo $SHELL /bin/bash
Κώδικας:NOW=$(date +%s) SLEEP=`echo $TOMORROW-$NOW|bc` sleep $SLEEP done
ديميتريس
-
09-05-17, 09:09 Απάντηση: Ερώτηση για bash #1168
Ας κάνω κι εγώ μια ερώτηση:
Έχουμε 2 directories, Α και Β, φυσικά τα ονόματά τους είναι utf8 και μπορεί να περιέχουν και κενά.
Έχουμε επίσης ένα string Γ, επίσης utf8 και επίσης μπορεί να περιέχει και κενά.
Θέλω να ψάξω όλα τα αρχεία και directories κάτω από το Α, για όλα τα αρχεία που περιέχουν το string Γ στο όνομά τους, και να κάνω relative symlinks αυτών στο directory B.
ΠΡΟΣΟΧΗ !!!
Στο directory Α, αν ένα αρχείο ή directory είναι και το ίδιο symlink, να το αγνοεί, καθώς κάποια στιγμή θα πέσει στο "πραγματικό" αρχείο ή directory. Έτσι αποφεύγονται τα διπλά symlinks, όπως και δεν χρειάζεται να κάνω resolve τυχόν αλυσιδωτά symlinks μέχρι να βρω το τελικό αρχείο στο οποίο δείχνουν.
Θεωρώ πιο εύχρηστο/λογικό, να δίνονται στο script σαν παράμετροι το Α και το Γ, και το Β να μην δίνεται αλλά να θεωρείται ότι είναι το τρέχον directory.Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.
-
09-05-17, 11:20 Απάντηση: Ερώτηση για bash #1169
Το shebang σου λέει με ποιο shell να τρέξει αν δεν ορίσεις εσύ. Υπάρχει δηλαδή για την περίπτωση που τρέχεις το script σαν εκτελέσιμο πρόγραμμα, με ./ δηλαδή μπροστά. Όταν το καλείς με sh μπροστά (ή με bash/zsh/fish/whatever), ουσιαστικά του λες "τρέξτο με τον interpreter που σου λέω εγώ αντί για αυτό που ορίζεται στο shebang".
Δεν είμαι σίγουρος, δεν έχω ασχοληθεί ιδιαίτερα με scripting
-
09-05-17, 12:08 Απάντηση: Ερώτηση για bash #1170
Παρόμοια Θέματα
-
Βοήθεια για ένα απλό bash script
Από AddictedToChaos στο φόρουμ Unix - LinuxΜηνύματα: 34Τελευταίο Μήνυμα: 22-07-11, 01:57 -
bash - matlab
Από simeon.mattes στο φόρουμ Unix - LinuxΜηνύματα: 25Τελευταίο Μήνυμα: 25-06-08, 23:00 -
Bash Script help (Αρχάριος)
Από weakwire στο φόρουμ Unix - LinuxΜηνύματα: 12Τελευταίο Μήνυμα: 08-05-07, 00:41 -
bash rename (mv)
Από hayzel στο φόρουμ Unix - LinuxΜηνύματα: 6Τελευταίο Μήνυμα: 07-01-07, 16:33
Bookmarks