Перейти до основного вмісту
Версія: 11.x

pnpm pkg

Додано у: v11.3.0

Керує вмістом package.json з командного рядка.

pnpm pkg get [<key> [<key> ...]]
pnpm pkg set <key>=<value> [<key>=<value> ...]
pnpm pkg delete <key> [<key> ...]
pnpm pkg fix

До вкладених полів потрібно звертатись за допомогою шляхів, розділених крапками (наприклад, scripts.test, repository.url).

Команди​

get​

Отримує значення з package.json. Без аргументів, виводить повний маніфест. З одним чи більше ключів виводить запитувані поля.

pnpm pkg get name
pnpm pkg get name version
pnpm pkg get scripts.test

Якщо запитується лише один ключ і він виводиться у вигляді рядка, виводиться необроблене значення; в іншому випадку значення передається у форматі JSON. Вкажіть --json, щоб завжди мати вивід у форматі JSON.

set​

Встановлює одне чи більше значень в package.json. Кожен аргумент має формат key=value.

pnpm pkg set name=my-package
pnpm pkg set scripts.build="tsc -p ."
pnpm pkg set 'keywords[0]'=cli

Звичай значення зберігаються у вигляді рядків (string). Передайте аргумент --json, щоб перед збереженням значення перетворити його у формат JSON (це корисно для логічних значень, чисел, масивів та об’єктів):

pnpm pkg set private=true --json
pnpm pkg set 'engines={"node":">=22"}' --json

delete​

Вилучає один або кілька ключів з package.json.

pnpm pkg delete scripts.test
pnpm pkg delete keywords

fix​

Автоматично виправляє типові помилки у файлі package.json (наприклад, видаляє значення name або version, що не є рядком; видаляє блоки залежностей та scripts, значення яких не є об’єктами; видаляє поле bin, яке не є ані рядком, ані об’єктом).

pnpm pkg fix

Параметри​

--json​

Якщо встановлено, перед записом кожне значення value інтерпретується як JSON. При отриманні одного ключа повертає значення у форматі JSON замість необробленого значення.

--recursive, -r​

Виконує команду для кожного проєкту в робочій області або для кожного проєкту, вибраного за допомогою параметра --filter.

pnpm -r pkg get name
pnpm -r pkg set version=1.0.0
pnpm --filter "./packages/*" pkg get name

Команда pnpm -r pkg get повертає об’єкт JSON, ключами якого є назви пакунків; команди set, delete та fix застосовуються до кожного відповідного проєкту.