Handige commando's en dergelijke.

Plaats reactie
Gebruikersavatar
vi coactus
Berichten: 215
Lid geworden op: zo jan 19, 2020 12:02 pm

Handige commando's en dergelijke.

Bericht door vi coactus »

Ik had het er laatst over met iemand, handige commando's. 'alias' kennen de meesten wel.
Nu wordt mplayer2 niet of amper meer bijgehouden en gebruik je mpv. Probleem is, ze gebruiken dezelfde config file, maar die bijten elkaar, of iig die van mpv bijt mplayer2. Maw. een alias aangemaakt zodat ik ook 'ouderwets' mplayer kan draaien, daarvan gaat de geluidsoutput naar koptelefoon en mpv zelf naar spdif.

Maar iets dat veel minder mensen kennen:

Code: Selecteer alles

$ shopt

Zie de hoeveelheid opties. Je kunt bv case-sensitivity uitzetten zodat op *.jpg zowel bla.jpg als bla.JPG etc matchen.
Je kunt ook bijvoorbeeld een uitgebreidere filematching nemen.

Dan kun je bijvoorbeeld ls +(*.jpg|*.png) doen.
Dit is natuurlijk een simpel voorbeeld, maar zo kun je makkelijk een regex in je bash gebruiken.
En geen last hebben van case sensitivity kan ook handig zijn als foto's met verschillende camera's gemaakt zijn bijvoorbeeld, en dan ook meteen ge mogelijkheid op een jpeg file erbij.

Zo heb ik ook een reverse script gemaakt dat alb/ in bla/ omzet en alb/alb.mkv eerst alb/bla.mkv en dan alb/ naar bla/ filenames enkel reversen voor mkv en srt, maar de extensies niet. De rest zo laten.
Gebruikersavatar
vi coactus
Berichten: 215
Lid geworden op: zo jan 19, 2020 12:02 pm

Re: Handige commando's en dergelijke.

Bericht door vi coactus »

Code: Selecteer alles

$ ls
bla2.JPEG  bla2.JPG  bla2.PNG  bla.jpeg  bla.jpg  bla.mkv  bla.mp4  bla.png  bla.sh

Code: Selecteer alles

$ shopt
…
extglob off
…
nocaseglob off
…

Code: Selecteer alles

$ ls !(*.jp?(e)g|*.png)
bash: !: event not found

Code: Selecteer alles

$ shopt -s extglob

Code: Selecteer alles

$ ls !(*.jp?(e)g|*.png)
bla2.JPEG  bla2.JPG  bla2.PNG  bla.mkv  bla.mp4  bla.sh

Code: Selecteer alles

$ shopt -s nocaseglob

Code: Selecteer alles

$ ls !(*.jp?(e)g|*.png)
bla.mkv  bla.mp4  bla.sh
iswrong
Berichten: 95
Lid geworden op: ma feb 10, 2020 9:16 am

Re: Handige commando's en dergelijke.

Bericht door iswrong »

Laat ik ook maar een commando bijdragen:

https://github.com/junegunn/fzf

Je kunt er van alles naar pipen en dan krijg je een lijst die je die je fuzzy kunt doorzoeken. Je kunt het op allerlei handige manieren in je shell integreren. Bijv.:

- History search (^R) vervangen met fzf.
- Bestanden zoeken als argument van een commando.
- Snel naar een directory springen icm z.
- Processen doorzoeken om te killen met kill <tab>.
- SSH hostnames doorzoeken met ssh <tab>
- Snel tussen git branches/tags schakelen.
- Commit history doorzoeken.
- Completions voor programma's doorzoeken.

etc.

Zie ondermeer:

https://github.com/junegunn/fzf#fuzzy-c ... sh-and-zsh
Gebruikersavatar
vi coactus
Berichten: 215
Lid geworden op: zo jan 19, 2020 12:02 pm

Re: Handige commando's en dergelijke.

Bericht door vi coactus »

iswrong schreef: vr aug 21, 2020 7:59 pm Laat ik ook maar een commando bijdragen:

https://github.com/junegunn/fzf

Je kunt er van alles naar pipen en dan krijg je een lijst die je die je fuzzy kunt doorzoeken. Je kunt het op allerlei handige manieren in je shell integreren. Bijv.:

- History search (^R) vervangen met fzf.
- Bestanden zoeken als argument van een commando.
- Snel naar een directory springen icm z.
- Processen doorzoeken om te killen met kill <tab>.
- SSH hostnames doorzoeken met ssh <tab>
- Snel tussen git branches/tags schakelen.
- Commit history doorzoeken.
- Completions voor programma's doorzoeken.

etc.

Zie ondermeer:

https://github.com/junegunn/fzf#fuzzy-c ... sh-and-zsh
Ik zal er eens naar kijken, de huidige completion heb ik helemaal aangepast/grotendeels uitgezet omdat hij dingen doet waar hij geen moer mee te maken heeft.
Plaats reactie