[linux] 명령 출력을 클립 보드에 직접 복사하려면 어떻게해야합니까?
터미널을 사용할 때 명령 출력을 클립 보드에 파이프하여 다시 붙여 넣는 방법은 무엇입니까? 예를 들어 :
cat file | clipboard
답변
나는 항상 이것을하고 싶었고 훌륭하고 쉬운 방법을 찾았습니다. 다른 사람이 필요로하는 경우를 대비하여 완전한 절차를 작성했습니다.
먼저 다음과 같은 16kB 프로그램을 설치하십시오 xclip
.
sudo apt-get install xclip
그런 다음 출력을 파이프 xclip
보드에 복사하여 파이프 라인에 복사 할 수 있습니다.
cat file | xclip
방금 복사 한 텍스트를 붙여 넣으려면 다음을 사용해야합니다.
xclip -o
수명을 단순화하기 위해 .bashrc 파일에 별명을 설정할 수 있습니다.
alias "c=xclip"
alias "v=xclip -o"
이것이 얼마나 유용한 지 보려면 새 터미널 창에서 현재 경로를 열고 싶다고 상상해보십시오 ( 일부 시스템에서는 Ctrl+ 와 같은 다른 방법이있을 수 T있지만 이것은 단지 설명을위한 것입니다).
Terminal 1:
pwd | c
Terminal 2:
cd `v`
` `
주변에 주목하십시오 v
. 이 v
명령은 먼저 명령으로 실행 된 다음 대신 사용하도록 대체됩니다 cd
.
내용을 X
클립 보드 로만 복사
cat file | xclip
X
응용 프로그램 이외의 다른 곳에 붙여 넣으려면 다음을 시도하십시오.
cat file | xclip -selection clipboard
답변
OS X에서는 pbcopy
;를 사용하십시오 . pbpaste
반대 방향으로갑니다.
pbcopy < .ssh/id_rsa.pub
답변
Linux / OSX / Cygwin 용 도구를 만들었습니다.이 도구는 다른 도구와 비슷하지만 약간 독특합니다. 내가 전화를 cb
하고 그것을이 github의의 요점에서 찾을 수 있습니다 .
그 요지에서 Linux, macOS 및 Cygwin을 사용하여 명령 줄을 통해 복사하여 붙여 넣는 방법을 보여줍니다.
리눅스
_copy(){
cat | xclip -selection clipboard
}
_paste(){
xclip -selection clipboard -o
}
맥 OS
_copy(){
cat | pbcopy
}
_paste(){
pbpaste
}
사이 그윈
_copy(){
cat > /dev/clipboard
}
_paste(){
cat /dev/clipboard
}
참고 : 나는 원래 Bob Enohp의 답변에 대한 의견에서 이것을 언급하려고했습니다 . 그러나 나는 내 요지에 README를 추가해야한다는 것을 깨달았습니다. 요점 편집자는 Markdown 미리보기를 제공하지 않기 때문에 여기에 답 상자를 사용하고 그것을 요점 생각에 복사 / 붙여 넣은 후에 “답변을 제출할 수도 있습니다.”
cb
클립 보드에 누수 방지 티
이 스크립트는 다음에 모델링됩니다 tee
(참조 man tee
).
일반적인 복사 및 붙여 넣기 명령과 같지만 통합 가능하고 체인 가능할 때 감지 할 수 있습니다.
예
부
$ date | cb
# clipboard contains: Tue Jan 24 23:00:00 EST 2017
풀
# clipboard retained from the previous block
$ cb
Tue Jan 24 23:00:00 EST 2017
$ cb | cat
Tue Jan 24 23:00:00 EST 2017
$ cb > foo
$ cat foo
Tue Jan 24 23:00:00 EST 2017
체인
$ date | cb | tee updates.log
Tue Jan 24 23:11:11 EST 2017
$ cat updates.log
Tue Jan 24 23:11:11 EST 2017
# clipboard contains: Tue Jan 24 23:11:11 EST 2017
파일 리디렉션을 통해 복사
(시간순으로 이것을 시연하는 것이 합리적이었습니다)
# clipboard retained from the previous block
$ cb < foo
$ cb
Tue Jan 24 23:00:00 EST 2017
# note the minutes and seconds changed from 11 back to 00
답변
복사 / 붙여 넣기 명령에서 추측 작업을 수행하는이 작은 스크립트를 작성했습니다.
스크립트의 Linux 버전은 시스템에 이미 설치되어있는 xclip을 사용합니다. 스크립트를 클립 보드라고합니다.
#!/bin/bash
# Linux version
# Use this script to pipe in/out of the clipboard
#
# Usage: someapp | clipboard # Pipe someapp's output into clipboard
# clipboard | someapp # Pipe clipboard's content into someapp
#
if command -v xclip 1>/dev/null; then
if [[ -p /dev/stdin ]] ; then
# stdin is a pipe
# stdin -> clipboard
xclip -i -selection clipboard
else
# stdin is not a pipe
# clipboard -> stdout
xclip -o -selection clipboard
fi
else
echo "Remember to install xclip"
fi
스크립트의 OS X 버전은 모든 Mac에 사전 설치된 pbcopy 및 pbpaste에 의존합니다.
#!/bin/bash
# OS X version
# Use this script to pipe in/out of the clipboard
#
# Usage: someapp | clipboard # Pipe someapp's output into clipboard
# clipboard | someapp # Pipe clipboard's content into someapp
#
if [[ -p /dev/stdin ]] ; then
# stdin is a pipe
# stdin -> clipboard
pbcopy
else
# stdin is not a pipe
# clipboard -> stdout
pbpaste
fi
clipboard
이 두 예제에 표시된 것처럼 단순히 파이프 인 또는 파이프 아웃하기 때문에 스크립트를 사용하는 것은 매우 간단합니다 .
$ cat file | clipboard
$ clipboard | less
답변
에 추가하십시오 ~/.bashrc
:
# Now `cclip' copies and `clipp' pastes'
alias cclip='xclip -selection clipboard'
alias clipp='xclip -selection clipboard -o'
이제 p 페이스트와 c 클립 사본을 자르십시오. 그러나보다 멋진 작업을 수행 할 수도 있습니다.
clipp | sed 's/^/ /' | cclip
↑ 클립 보드를 들여 씁니다. 스택 오버플로 { }버튼이 없는 사이트에 적합
다음을 실행하여 추가 할 수 있습니다.
printf "\nalias clipp=\'xclip -selection c -o\'\n" >> ~/.bashrc
printf "\nalias cclip=\'xclip -selection c -i\'\n" >> ~/.bashrc
답변
Parcellite를 사용하고 있으며 xsel
마지막 커밋 메시지를 git
클립 보드 관리자 에게 복사하려고합니다 (어떤 이유로 xclip
작동하지 않음).
$ git log -1 --pretty=%B | xsel -i -b
답변
외부 도구를 사용하지 않고 서버보기 SSH에 연결하는 경우 비교적 쉬운 명령입니다.
Windows 7 이상 명령 프롬프트에서 :
ssh user@server cat /etc/passwd | clip
원격 파일의 내용이 로컬 클립 보드에 저장됩니다.
(이 명령을 실행하려면 키에 대해 Pageant를 실행해야합니다. 그렇지 않으면 암호를 묻습니다.)