Anzeige:
Ergebnis 1 bis 4 von 4

Thema: sanitize.sh : Namen per Shell säubern

  1. #1
    Registrierter Benutzer
    Registriert seit
    Jan 2008
    Beiträge
    2.467

    Lightbulb sanitize.sh : Namen per Shell säubern

    So, mir war gerade ein bisschen langweilig, und ich habe ein bisschen gescriptet, im VIM selbstmurmelnd:

    Nebenbei habe ich entdeckt, wie man an die Schleifenvariable einer while-Schleife kommt, jaja wer die UNIX - Backticks

    Code:
    `` und tr
    kennt, ist fein raus.

    Also eine kleine Süßigkeit am Sonntag:

    Code:
    #!/bin/bash
    
    ls -1 | while read l; do
    
       # rausfischen von unerwuenschten Zeichen
     
        nn=$(echo "`echo $l| tr " " '_' | tr '(' '_'| tr ')' '_' | tr -d "\012"`")
       
       # konservieren des alten schmutzigen Namens, gerne von GUIS erzeugt
        
        on=$(echo "`echo $l| tr -d \"\012\"`")
    
       # WICHTIG: Entfernen des UNIX-Zeilenumbruchs, ASCII Nr. oktal 12, siehe auch 
       # man ascii
    
        onn=$(echo "$on" | tr -d "\012")
        nnn=$(echo "$nn" | tr -d "\012")
    
        if [ -n "$onn" -a -n "$nnn" ] ; then
            echo mv "`pwd`/$onn" "`pwd`/$nnn"
            # mv "`pwd`/$onn" "`pwd`/$nnn"
         fi
         
    
    done
    Rookies sollten sich die Quotes auf der Zunge zergehen lassen.

    Tipps von Wizards gerne genommen.

    Zum Scharfschalten den Kommentar rausnehmen.

    Wertvolle Synatx-Info gibt mir immer wieder:

    Code:
     grep keineAhnung /etc/init.d/*
    Sollte auch mit systemd nicht ganz leeeeehr sein.

    Ich gebe mir selbst einen "tooo many echos used" award.
    Geändert von Aqualung (01.09.13 um 18:20 Uhr) Grund: schnapsnummer 2345

  2. #2
    Registrierter Benutzer
    Registriert seit
    Jan 2008
    Beiträge
    2.467

    Red face In der Ecke steh ich nun

    Schade, dass keiner den Schwachsinn der Aussage

    "an die Schleifenvariable kommen"

    bemängelt hat.

    Eine Schleife ist eine Schleife ist eine Schleife (das schreib ich jetzt zur Strafe 333x)

    OT: Kenner mögen sich zur IF-SCHLEIFE auskotzen und kollegialen Flachsinn beisteuern.
    Geändert von Aqualung (04.09.13 um 18:40 Uhr)

  3. #3
    Registrierter Benutzer
    Registriert seit
    Jan 2008
    Beiträge
    2.467

    V1.1

    - kann auch unerwünscht sein.

    Code:
    #!/bin/bash
    
    ls -1 | while read l; do
    
       # rausfischen von unerwuenschten Zeichen
     
        nn=$(echo "`echo $l| tr " " '_' | tr '(' '_'| tr ')' '_' | tr '-' '_' | tr -d "\012"`")
       
       # konservieren des alten schmutzigen Namens, gerne von GUIS erzeugt
        
        on=$(echo "`echo $l| tr -d \"\012\"`")
    
       # WICHTIG: Entfernen des UNIX-Zeilenumbruchs, ASCII Nr. oktal 12, siehe auch 
       # man ascii
    
        onn=$(echo "$on" | tr -d "\012")
        nnn=$(echo "$nn" | tr -d "\012")
    
        if [ -n "$onn" -a -n "$nnn" -a  "$onn" != "$nnn"  ] ; then
            echo mv "`pwd`/$onn" "`pwd`/$nnn"
            #mv "`pwd`/$onn" "`pwd`/$nnn"
         fi
         
    
    done
    Wieso ich mir diese Arbeit gemacht habe?

    Um preiswerte MP3-Player, die aus der Welt von proprietären Drecks Windows-Clienten kommen und sich äußerst gerne selbst zerlegen, just wenn man die ganze Sammlung gerippt hat, zu bearbeiten.
    Geändert von Aqualung (07.09.13 um 15:47 Uhr)

  4. #4
    Registrierter Benutzer
    Registriert seit
    Jan 2008
    Beiträge
    2.467

Ähnliche Themen

  1. aliases
    Von BBTE im Forum Linux Allgemein
    Antworten: 6
    Letzter Beitrag: 12.12.02, 12:49
  2. Auflösung ändern per shell
    Von Seidl im Forum System installieren und konfigurieren
    Antworten: 4
    Letzter Beitrag: 22.11.02, 16:44
  3. automatischer reboot
    Von boxa im Forum Anwendungen Allgemein, Software
    Antworten: 7
    Letzter Beitrag: 09.08.02, 10:58
  4. KDE Screenlock per shell
    Von marcdevil im Forum Windowmanager
    Antworten: 1
    Letzter Beitrag: 22.02.02, 15:17
  5. Antworten: 7
    Letzter Beitrag: 11.02.01, 09:21

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •