Câu trả lời:
Sử dụng một cái gì đó như:
someCommand | clip
Điều đó sẽ dẫn kết quả vào clipboard của windows
Tôi đang sử dụng trình vỏ lệnh Git Bash cho Windows và như ai đó đã lưu ý ở trên, việc sử dụng cliprất khó chịu, bởi vì nó cũng sao chép trở lại vận chuyển ở cuối đầu ra của bất kỳ lệnh nào. Vì vậy, tôi đã viết chức năng này để giải quyết nó:
function cpy {
while read data; do # reads data piped in to cpy
echo "$data" | cat > /dev/clipboard # echos the data and writes that to /dev/clipboard
done
tr -d '\n' < /dev/clipboard > /dev/clipboard # removes new lines from the clipboard
}
Ví dụ:
$ pwd | cpy # copies directory path
$ git branch | cpy # copies current branch of git repo to clipboard
trvà vẫn sử dụng clip, tức là:pwd | tr -d \r\n | clip
Chỉ để tham khảo, tôi đã phải sao chép khóa công khai của mình trực tiếp sau khi Bitbucket đưa ra cảnh báo khóa xấu. Tôi đã có thể sử dụng @soandos trả lời như vậy:
cat ~/.ssh/id_rsa.pub | clipđể sao chép khóa của tôi trực tiếp từ dòng lệnh trên PC. (vì dòng lệnh hút so với thiết bị đầu cuối)
Trong PowerShell, chỉ cần đưa văn bản vào Set-Clipboard. Để gõ nhanh, bạn có thể sử dụng bí danh scb. Điều này không thêm một ngắt dòng như cliptiện ích nào.
Ví dụ, lệnh này đặt nội dung của myfile.txtvào bảng tạm:
gc .\myfile.txt | scb
Lưu ý rằng đối với các đối tượng đại diện cho các đối tượng hệ thống tệp, Set-Clipboardsẽ sao chép đối tượng theo nghĩa tương tự như Explorer thực hiện khi bạn Ctrl + C một tệp. Nếu đó không phải là những gì bạn muốn, hãy đưa đối tượng qua Out-Stringđầu tiên.
Hàm này thay thế clip Windows tiêu chuẩn trong Git Bash, nơi một dòng mới được sao chép.
function clip {
printf "$(</dev/stdin)" | cat > /dev/clipboard
}
Điều này dựa trên câu trả lời của Matthew chỉ bảo tồn dòng cuối cùng và giới thiệu một dòng mới. Sử dụng printfđể tránh dòng mới mà echothêm.
C:\Windows\system32\clip.exe.