Files
linux-odyssey/packages/utils/src/commands.ts
T
2024-02-22 21:31:29 +08:00

21 lines
418 B
TypeScript

export interface File {
path: string
type: string
}
const fileTypes = new Map([
['file', '-f'],
['folder', '-d'],
['link', '-L'],
['socket', '-S'],
])
function sanitizePath(path: string): string {
return path.replace(/[^a-zA-Z0-9._/-]/g, '')
}
export function buildFileCheckCmd(file: File): string[] {
const { path, type } = file
return ['test', fileTypes.get(type) || '-e', sanitizePath(path)]
}