
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
squirrel_storage
Advanced tools
Manipulação de arquivos locais
Dependência do pacote squirrel_util
$ npm install --save squirrel_util squirrel_storage
Temos alguns parametros
const { Storage, Path } = require('../STORAGE_MODULE')
const storage = new Storage({
useWorkspace: true, // usa caminho até o projeto, que é o diretorio atual do projeto
createDirIfNotExists: true // cria o diretorio caso não exista
}, 'public/', 'email/')
// no caso eu quero o diretorio public/email/*
Verficação de existencia de diretorio
const { Storage, Path } = require('../STORAGE_MODULE')
const storage = new Storage({
useWorkspace: true, // usa caminho até o projeto, que é o diretorio atual do projeto
createDirIfNotExists: true // cria o diretorio caso não exista
}, 'public/', 'email/')
console.log(storage.Exists()) // boolean
Listagens dos arquivos ou pastas do diretorio
const { Storage, Path } = require('../STORAGE_MODULE')
const storage = new Storage({
useWorkspace: true, // usa caminho até o projeto, que é o diretorio atual do projeto
createDirIfNotExists: true // cria o diretorio caso não exista
}, 'public/', 'email/')
console.log(storage.ListDirSync()) // lista contendo arquivos do diretorio, também pode conter pastas []
Escrita de arquivo
const { Storage, Path } = require('../STORAGE_MODULE')
const storage = new Storage({
useWorkspace: true, // usa caminho até o projeto, que é o diretorio atual do projeto
createDirIfNotExists: true // cria o diretorio caso não exista
}, 'public/', 'email/')
storage.WriteFileSync('teste.html', '<h1>Olá Mundo</h1>') // escreve o arquivo 'teste.html'
Adiciona ao fim do arquivo o novo conteudo
const { Storage, Path } = require('../STORAGE_MODULE')
const storage = new Storage({
useWorkspace: true, // usa caminho até o projeto, que é o diretorio atual do projeto
createDirIfNotExists: true // cria o diretorio caso não exista
}, 'public/', 'email/')
storage.AppendFileSync('teste.html', '<h1>Olá Mundo</h1>') // adiciona valor no fim do arquivo 'teste.html'
Realiza a leitura do arquivo
const { Storage, Path } = require('../STORAGE_MODULE')
const storage = new Storage({
useWorkspace: true, // usa caminho até o projeto, que é o diretorio atual do projeto
createDirIfNotExists: true // cria o diretorio caso não exista
}, 'public/', 'email/')
storage.ReadFileSync('teste.html') // leitura do arquivo 'teste.html'
/**
* <h1>Olá Mundo</h1>
* <h1>Olá Mundo</h1>
*/
Remove o arquivo
const { Storage, Path } = require('../STORAGE_MODULE')
const storage = new Storage({
useWorkspace: true, // usa caminho até o projeto, que é o diretorio atual do projeto
createDirIfNotExists: true // cria o diretorio caso não exista
}, 'public/', 'email/')
storage.DeleteFileSync('teste.html') // apaga o arquivo 'teste.html'
Outra forma de criar uma instancia
const { Storage, Path } = require('../STORAGE_MODULE')
const emailDir = Storage.disk('public', 'email');
const htmlDir = Storage.disk({
useWorkspace: true,
createDirIfNotExists: true
}, 'public/', 'email/');
// caminho do projeto
Path.basePath
// obtem informação do diretorio
console.log(Path.pathParser('/teste/seila'))
// { root: '/', dir: '/teste', base: 'seila', ext: '', name: 'seila' }
console.log(Path.pathDir('/teste/seila'))
// /teste/seila
console.log(Path.joinAndUseBasePath('/teste/seila'))
// /home/$USER/$WORKSPACE/teste/seila
console.log(Path.join('/teste/seila', 'hello.html'))
// /teste/seila/hello.html
FAQs
Manipulação de arquivos locais
The npm package squirrel_storage receives a total of 2 weekly downloads. As such, squirrel_storage popularity was classified as not popular.
We found that squirrel_storage demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.