GNU/Linux >> Belajar Linux >  >> Linux

Gumpalan peka huruf besar-kecil pada zsh/bash

ZSH:

$ unsetopt CASE_GLOB

Atau, jika Anda tidak ingin mengaktifkan globbing yang tidak peka huruf besar/kecil secara umum, Anda dapat mengaktifkannya hanya untuk bagian yang bervariasi:

$ print -l (#i)(somelongstring)*

Ini akan cocok dengan file apa pun yang dimulai dengan "somelongstring" (dalam kombinasi huruf besar/kecil). Bendera case-insensitive berlaku untuk semua yang ada di antara tanda kurung dan dapat digunakan berkali-kali. Baca manual zshexpn(1) untuk informasi lebih lanjut.

PEMBARUAN Hampir lupa, Anda harus mengaktifkan extendend globbing agar ini berfungsi:

setopt extendedglob

Bergantung pada seberapa dalam Anda ingin memiliki cantuman ini, find menawarkan cukup banyak dalam hal ini:

find . -iname 'SomeLongString*' -maxdepth 1

Ini hanya akan memberi Anda file di direktori saat ini. Penting di sini adalah -iname parameter bukan -name .


pesta:

shopt -s nocaseglob


$ function i () {
> shopt -s nocaseglob; $*; shopt -u nocaseglob
> }
$ ls *jtweet*
ls: cannot access *jtweet*: No such file or directory
$ i ls *jtweet*
JTweet.pm  JTweet.pm~  JTweet2.pm  JTweet2.pm~

Linux
  1. Perintah Tidak Ditemukan Di Zsh, Tetapi Ditemukan Di Bash?

  2. Bola Rekursif?

  3. Sejarah Bash tanpa nomor baris

  1. Bagaimana variabel numerik zero-pad di zsh (dan mungkin juga bash?)

  2. Jalankan perintah bash pada pipa jenkins

  3. bash - pencocokan variabel case-insensitive

  1. Terminal mana yang lebih baik:Bash vs Zsh

  2. Bagaimana Cara Mendapatkan Asterisk '*' Di Zsh Untuk Memiliki Perilaku Yang Sama Seperti Bash?

  3. Salin berbagai file di baris perintah (ZSH/BASH)