110
команда /check каталогта бар барлық файлдар тізбегіне сай var
мәнінің айнымалысын иемденеді.
Жазбаның жаңа нұсқаларын $(команда) тек BASH 2.0 және одан
жоғары нұсқалар сүйемелдейді және бір-біріне кіріктірілген
алмастырып қоюларды жасауға ықпал етеді. Мысалы, команда
var=$(ls /$(ls /check))
команда /check каталогта бар барлық файлдар тізбегіне сай var
мәнінің айнымалысын иемденеді.
5.7.2. Топтық таңбалар
Алдыңғы бөлімде қарастырылған каталогтағы барлық файлдардың
тізімін алу тапсырмасы ауыр болуы мүмкін. Пайдаланушыға
каталогтағы барлық файлдардың тізімі емес, тек белгілі бір критерий
бойынша анықталатын файлдар қажет болуы мүмкін, мысалы атауы А
әрпінен басталатын немесе 8 таңбадан аспайтын файлдар қажет болуы
мүмкін. Осындай өлшемдерді анықтау үшін файл атауының маскасы
немесе жай маска қолданылады. Маска дегеніміз файл атауына
қойылатын секілді шектеулер жасалған мәтіндік жолақ. Масканың
басты ерекшелігі оның құрамына фай атауында пайдалануға
болмайтын алмастырып қою таңбалары кіре алады. Файл атауының
маскаға сәйкестігін тексергенде алмастырып қою таңбаларын атаудың
бір немесе бірнеше таңбасы өзгереді.
Көп қолданылатын алмастырып қою таңбалары «*» және «?».
«*» алмастырып қою таңбасы файл атауында оның орнында
таңбаның кезх-келген саны тұра алады дегенді білдіреді. Осылайша,
text*.doc маскасына text1.doc, text123.doc және тіптен text.doc файл
атаулары қанағаттандыратын болады.
«?» алмастырып қою таңбасы, оның орнында файл атауында бір
таңба болады немесе ешқандай таңба қойылмайды дегенді білдіреді.
Осылайша, text?.doc маскасына text1.doc, text.doc файл атаулары
қанағаттандырылады, бірақ text12.doc атауы қанағаттандырылмайды.
Масканы қанағаттандыратын файлдар тізімін алу үшін маска ls
команданың параметрі ретінде көрсетіле алады. Мысалы, ls *~ команда
ағымдағы каталогтан атауының соңы мәттегі (әдетте ішіндегі деректері
ескірген файлдар осылай аталады) аяқталатын барлық файлдарды
экранға шығарады.
|