pbcopy & pbpaste: Манипулиране на клипборда от командния ред
Съдържание:
Копирането и поставянето са абсолютна необходимост за почти всички компютърни потребители и ако откриете, че работите често в командния ред, ще искате да знаете как да манипулирате клипборда на Mac OS X директно от терминален ред. За това са командите на Mac pbcopy и pbpaste и както може би се досещате, двете команди правят точно това, което звучат, pbcopy е за копиране, а pbpaste е за поставяне през командния ред.Те всъщност са доста мощни и ще бъдете сигурни, че ще ги намерите полезни следващия път, когато се мотаете с вашия bash, tcsh, zsh или каквото и да е предпочитаното от вас подканящо командно меню.
Ще разгледаме кратко обяснение как да използвате pbcopy и pbpaste за манипулиране на данни от клипборда, с някои примери, показващи как да пренасочите изхода на командите на терминала като вход в клипборда и, разбира се, как да изхвърлете съдържанието на клипборда в командния ред с pbpaste.
Използване на pbcopy & pbpaste от командния ред на Mac
pbcopy: взема стандартен вход и го поставя в буфера на клипборда
pbcopy е достатъчно лесен за използване, основно насочва нещо в него и то ще го копира в буфера на клипборда. След това това може да бъде достъпно или чрез pbpaste, или чрез стандартната команда за поставяне на Finder (command-v). Ето как да го използвате:
$ pbcopy < file.txt
Това е, сега съдържанието на file.txt ще бъде във вашия клипборд, готово за поставяне където и да било. Но pbcopy е много по-мощен от това и можете да насочите изхода на команди и програми също да бъдат копирани. Ето пример с командата 'ps':
$ ps aux | pbcopy
Това предава резултатите от командата ps в клипборда, отново може да бъде поставено навсякъде. Ако искате малко да филтрирате резултатите си, можете да направите и това. Пример за използване на командата grep е:
$ ps aux | grep root | pbcopy
Това предава резултатите от командата 'ps aux', но филтрира специално за 'root' и копира само тези резултати в клипборда. Страхотно, а?
pbpaste: взема данни от буфера на клипборда и ги записва в стандартния изход
pbpaste е също толкова лесен за използване, той ще извлече всичко, което сте поставили в буфера на клипборда, и ще го изплюе. В най-простата му форма просто напишете:
$ pbpaste
Това ще отпечата всички данни, които сте копирали от командата pbcopy или командата за копиране на Finder (command-c). Можете лесно да насочите този изход във файл чрез командния ред, за да получите достъп по-късно, ако искате, с тази проста команда:
$ pbpaste > pastetest.txt
Филтрирането на поставеното е много полезно обаче и структурата на командите е много подобна на това, което видяхме по-рано с pbcopy. Ще филтрираме за „rcp“, но разбира се, вие можете да филтрирате за всичко, което искате
$ pbpaste | grep rcp
Това, което ще видите поставено, е само това, което отговаря на вашето търсене за 'rcp' в данните в клипборда.
Има много повече полза от pbcopy и pbpaste, но това би трябвало да ви даде обща представа как да ги използвате и може би да ви даде някои идеи да ги приложите в собствената си продуктивност.Екранната снимка просто демонстрира, че можете да копирате и поставите от командния ред в приложение Finder (в този случай TextEdit), без да губите форматиране.
И да, можете да използвате командите pbcopy и pbpaste на терминала и след това да взаимодействате с тях отново от GUI на MacOS, като използвате стандартните клавишни комбинации за копиране и поставяне на Mac от Command+C и Command+ V. Върви и в другата посока, копие от GUI може да бъде поставено с pbpaste в командния ред.
Потребителите, които се интересуват да научат по-мощни употреби на pbcopy и pbpaste за модифициране на картона на Mac OS X чрез командния ред, се насърчават да прегледат страниците с ръководство за команди, които по принцип са взаимозаменяеми и обхващат и двете страни на командата. Достъпът до това се постига лесно чрез „man pbcopy“ или „man pbpaste“, където ще видите някои повече подробности за използването на командата, както и други опции за това как да използвате командите, да коригирате кодирането, да премахвате или поддържате подробности за обогатен текст и много повече.