最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談Node.js操作剪貼板的兩種方式

 更新時(shí)間:2025年09月11日 10:51:53   作者:卿·靜  
本文主要介紹Node.js中通過第三方工具庫(kù)clipboardy和child_process.文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在 Node.js 中,我們可以通過多種方式實(shí)現(xiàn)對(duì)系統(tǒng)剪貼板的讀寫操作。本文將以一段示例代碼為基礎(chǔ),分別介紹兩種常見的剪貼板操作方式:

1.clipboardy

下載第三方工具庫(kù)clipboardy ,調(diào)用該庫(kù)封裝的方法可直接向剪切板讀寫內(nèi)容。

npm install clipboardy 

clipboardy不支持使用require導(dǎo)入,需在package.json文件中添加選項(xiàng) "type": "module" ,在代碼中使用import導(dǎo)入工具庫(kù)

import clipboard from "clipboardy";

clipboard.writeSync("hello world"); // 向剪貼板寫入內(nèi)容

方法說明: clipboard.writeSync(text: string): void 

參數(shù):text:要寫入系統(tǒng)剪貼板的文本內(nèi)容,類型為 string

功能:同步將字符串寫入剪貼板。若執(zhí)行成功,按下ctrl+v可粘貼該內(nèi)容,如果文本內(nèi)容為空字符串,按下ctrl+v無反應(yīng),類似于清空剪切板

let str = clipboard.readSync();  // 從剪貼板讀取內(nèi)容

console.log(str);

方法說明:clipboard.readSync(): string

返回值:返回當(dāng)前剪貼板中存儲(chǔ)的文本內(nèi)容,類型為 string

功能:同步讀取系統(tǒng)剪貼板中的文本數(shù)據(jù)

clipboardy工具庫(kù)的特點(diǎn)為簡(jiǎn)潔、跨平臺(tái),適合快速開發(fā),但無法復(fù)制文件。

2.child_process.exec

在某些場(chǎng)景中,我們可能希望通過系統(tǒng)命令實(shí)現(xiàn)更復(fù)雜的剪貼板操作,比如操作文件、清空剪貼板等。這時(shí)可以使用 Node.js 內(nèi)置的 child_process 模塊中的 exec() 函數(shù)。

(1)讀取剪切板

import { exec } from "child_process";

const get_command = `powershell Get-Clipboard`;

exec(get_command, (error, stdout, stderr) => {
  if (error) {
    console.error("讀取剪貼板內(nèi)容失敗:", error);
    return;
  }
  console.log(stdout);
});

命令說明:Get-Clipboard 是 PowerShell 命令,用于獲取當(dāng)前剪貼板的內(nèi)容

方法說明:   exec(command[, options][, callback]),功能是執(zhí)行一條 shell 命令并一次性獲取輸出

參數(shù):

  • command:完整的 shell 命令字符串
  • options:可設(shè)置輸出內(nèi)容的編碼格式等
  • callback:回調(diào)函數(shù),獲取 error、stdout(標(biāo)準(zhǔn)輸出)、stderr(錯(cuò)誤輸出),stdout 將包含剪貼板中的文本內(nèi)容

(2)設(shè)置剪切板字符內(nèi)容

const set_command = `powershell Set-Clipboard 'hello wrold'`;

exec(set_command, (error, stdout, stderr) => {
  if (error) {
    console.error("復(fù)制內(nèi)容到剪貼板失敗:", error);
    return;
  }
  console.log(stdout);
});

命令說明:

  • Set-Clipboard 是 PowerShell 命令,用于將指定文本寫入剪貼板。
  • 'hello wrold' 是要寫入的文本內(nèi)容,用單引號(hào)包裹

(3)設(shè)置剪切板文件內(nèi)容

const file_command = `powershell Set-Clipboard -Path "F:/CSDN/test.json"`;

exec(file_command, (error, stdout, stderr) => {
  if (error) {
    console.error("復(fù)制文件到剪貼板失敗:", error);
    return;
  }
  console.log(stdout);
});

命令說明:

  • Set-Clipboard -Path <路徑> 可以將文件對(duì)象復(fù)制到剪貼板。
  • 執(zhí)行該命令后,用戶可以在資源管理器中直接粘貼該文件。
  • 注意路徑應(yīng)使用雙引號(hào)包裹,尤其是路徑中包含空格或中文時(shí)。

(4)清空剪切板

const clear_command = `cmd /c "echo off | clip"`;

exec(clear_command, (error, stdout, stderr) => {
  if (error) {
    console.error("清空剪貼板失敗:", error);
    return;
  }
  console.log(stdout);
});

命令說明:

  • cmd /c:調(diào)用 CMD 執(zhí)行后面的命令并關(guān)閉命令行窗口。
  • echo off:輸出空字符串。
  • | clip:將前面命令的輸出(此處為空)通過管道符 | 傳給 clip 命令。
  • clip:Windows 命令行工具,用于將輸入內(nèi)容復(fù)制到剪貼板。
  • 整體功能是向剪貼板寫入空內(nèi)容,達(dá)到清空效果,按下ctrl+v無反應(yīng),此時(shí)按下win+v打開剪切板,里面依舊有內(nèi)容

3.總結(jié)對(duì)比

操作方式優(yōu)點(diǎn)適用場(chǎng)景
clipboardy簡(jiǎn)潔、跨平臺(tái)、安裝即用快速開發(fā)、文本操作
exec+命令功能更豐富,可操作文件等深度定制、系統(tǒng)集成

到此這篇關(guān)于淺談Node.js 操作剪貼板的兩種方式的文章就介紹到這了,更多相關(guān)Node.js 操作剪貼板內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Node在Controller層進(jìn)行數(shù)據(jù)校驗(yàn)的過程詳解

    Node在Controller層進(jìn)行數(shù)據(jù)校驗(yàn)的過程詳解

    這篇文章主要給大家介紹了關(guān)于Node在Controller層進(jìn)行數(shù)據(jù)校驗(yàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Nodejs高并發(fā)原理示例詳解

    Nodejs高并發(fā)原理示例詳解

    這篇文章主要為大家介紹了Nodejs高并發(fā)原理示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • nodejs+express搭建多人聊天室步驟

    nodejs+express搭建多人聊天室步驟

    本篇文章給大家詳細(xì)講解了nodejs+express搭建一個(gè)簡(jiǎn)易的多人聊天室的詳細(xì)步驟,有興趣的朋友學(xué)習(xí)下。
    2018-02-02
  • npm發(fā)包實(shí)踐使用gRPC教程

    npm發(fā)包實(shí)踐使用gRPC教程

    這篇文章主要為大家介紹了npm發(fā)包實(shí)踐使用gRPC教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 使用Node.js find-up在父目錄中高效尋找文件與目錄

    使用Node.js find-up在父目錄中高效尋找文件與目錄

    find-up 是一個(gè)小巧但功能強(qiáng)大的 Node.js 包,它能幫助我們實(shí)現(xiàn)這一需求,本文將深入探究如何使用 find-up 進(jìn)行有效搜索,并結(jié)合豐富的代碼演示幫助大家快速掌握其用法,需要的朋友可以參考下
    2024-05-05
  • Node.js與PHP、Python的字符處理性能對(duì)比

    Node.js與PHP、Python的字符處理性能對(duì)比

    因?yàn)楹罄m(xù)考慮實(shí)現(xiàn) Fl 引擎的Node.js版本,所以對(duì)比了下Node.js和PHP的字符處理性能。發(fā)現(xiàn)Node.js真是甩了PHP幾條街啊,再測(cè)試了下Python,比PHP還慢。
    2014-07-07
  • windows系統(tǒng)下更新nodejs版本的方案

    windows系統(tǒng)下更新nodejs版本的方案

    這篇文章主要介紹了windows系統(tǒng)下更新nodejs版本的方案,在文章給大家介紹了NodeJS 與 npm 在Windows下升級(jí)問題,需要的朋友可以參考下
    2017-11-11
  • 用NODE.JS中的流編寫工具是要注意的事項(xiàng)

    用NODE.JS中的流編寫工具是要注意的事項(xiàng)

    Nodejs讀寫流流的傳輸過程默認(rèn)是以buffer的形式傳輸?shù)?除非你給他設(shè)置其他編碼形式, 小伙伴可以參考下。
    2016-03-03
  • 基于Node.js搭建hexo博客過程詳解

    基于Node.js搭建hexo博客過程詳解

    這篇文章主要介紹了基于Node.js搭建hexo博客過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,
    2019-06-06
  • 在Mac OS下使用Node.js的簡(jiǎn)單教程

    在Mac OS下使用Node.js的簡(jiǎn)單教程

    這篇文章主要介紹了在Mac OS下使用Node.js的簡(jiǎn)單教程,Node.js是讓JavaScript應(yīng)用運(yùn)行于服務(wù)器端的框架,需要的朋友可以參考下
    2015-06-06

最新評(píng)論

余江县| 榆树市| 迁西县| 驻马店市| 洞头县| 广宗县| 恩施市| 库伦旗| 尤溪县| 张家口市| 克什克腾旗| 翁源县| 自治县| 佳木斯市| 云南省| 扶风县| 甘孜| 姚安县| 临朐县| 大埔县| 文山县| 西昌市| 大关县| 广河县| 墨竹工卡县| 永平县| 辽宁省| 微山县| 徐州市| 兴仁县| 塔城市| 沐川县| 手机| 澎湖县| 屯门区| 贵州省| 柯坪县| 丹凤县| 崇义县| 略阳县| 石狮市|