lista - linea de comandos windows
¿Cómo crear un archivo vacío en la línea de comandos en Windows? (30)
Al leer los comentarios en mi publicación, debo admitir que no leí la pregunta correctamente.
En la línea de comandos de Windows, una forma sería usar fsutil :
fsutil file createnew <filename> <size>
Un ejemplo:
fsutil file createnew myEmptyFile.txt 0
A continuación es para * nix línea de comandos.
touch filename
Este comando cambia la fecha de modificación de un archivo o lo crea si no se encuentra el archivo.
¿Cómo crear un archivo vacío en la línea de comandos de DOS / Windows?
Lo intenté:
copy nul > file.txt
pero siempre muestra que un archivo fue copiado.
¿Hay algún otro método en el cmd estándar?
Debe ser un método que no requiera el comando touch de Cygwin o cualquier otro comando no estándar. El comando debe ejecutarse desde un script para que no se puedan utilizar las pulsaciones de tecla.
Aquí hay otra manera:
cd. > filename
Aquí hay otra manera:
rem/ > file.ext
La barra /
es obligatoria; Sin ello, la parte de redireccionamiento fue comentada por rem
.
Ejecute CMD en modo admistrador y escriba esto:
NUL > file_name.extention
o escribes esto
echo .> file_name.extention
Esto funcionó para mí,
echo > file.extension
Aquí hay otra forma que encontré hoy, obtuve ideas de otras respuestas pero funcionó.
sometext > filename.extension
P.ej.
xyz > emptyfile.txt //this would create an empty zero byte text file
abc > filename.mp4 //this would create an zero byte MP4 video media file
Esto mostraría un mensaje de error en el símbolo del sistema que,
xyz
no es como un comando interno o externo, un programa operable o un archivo por lotes.
Pero lo extraño que encontré fue que el archivo se está creando en el directorio, incluso si el comando no es un comando estándar de Windows.
Hoy he descubierto uno nuevo :)
Esto cambiará el título de la ventana de línea de comando, pero también creará un archivo vacío.
title > file.txt
Intente esto: abc > myFile.txt
Primero, creará un archivo con el nombre myFile.txt
en el directorio de trabajo actual (en el símbolo del sistema). Luego ejecutará el comando abc
que no es un comando válido. De esta manera, ha obtenido un nuevo archivo vacío con el nombre myFile.txt
.
Leí muchos hilos pero no es el camino más corto.
Por favor, utilice el comando:
>copy /b NUL empty_file.txt
Otra forma más:
copy nul 2>empty_file.txt
Otro método más que crea un archivo de cero bytes:
break > "file.txt"
Primero crea tu archivo para que exista:
echo . > myfile.txt
Luego sobrescriba el archivo creado con una versión vacía usando el comando de copy
:
copy /y nul myfile.txt
Prueba esto:
type NUL > 1.txt
Esto definitivamente creará un archivo vacío.
Puedes escribir tu propio toque.
//touch.cpp
#include <fstream>
#include <iostream>
int main(int argc, char ** argv;)
{
if(argc !=2)
{
std::cerr << "Must supply a filename as argument" << endl;
return 1;
}
std::ofstream foo(argv[1]);
foo.close();
return 0;
}
Puedes usar el comando antiguo
copy con file_name.ext
no escriba nada, solo presione F6 para guardarlo, sin embargo, se imprimirá "Archivo copiado", pero cuando abra el archivo, estará vacío
Si realmente quieres un archivo totalmente vacío, sin salida a la salida estándar, puedes hacer un poco de trampa:
copy nul file.txt > nul
Simplemente redirija stdout a nul, y la salida de la copia desaparece.
También podrías usar:
echo. 2>foo
La salida de depuración para echo.
casi definitivamente estará vacío.
Use copy > your_file_name.extension
en el símbolo del sistema como
P:/excecise> copy > Sample.txt
copy con SomeFile.txt Entrar
Ctrl-Z Entrar
para que pueda crear un archivo vacío con
'''' > newfile.txt
navegue hasta el directorio y escriba el comando anterior en la ventana de PowerShell.
Tenga en cuenta que esto no funcionará en el símbolo del sistema de Windows.
type nul>filename
creará un nuevo archivo vacío.
Lo siento, llego tarde
ACTUALIZACIÓN : También copy nul filename
funciona sin redirigir (solución más obvia).
Sin redirección, Luc Vu o Erik Konstantopoulos point a:
copy NUL EMptyFile.txt
copy /b NUL EmptyFile.txt
" ¿Cómo crear un archivo de texto vacío a partir de un archivo por lotes? " (2008) también apunta a:
type NUL > EmptyFile.txt
# also
echo. 2>EmptyFile.txt
copy nul file.txt > nul # also in qid''s answer below
REM. > empty.file
fsutil file createnew file.cmd 0 # to create a file on a mapped drive
Nomad menciona una original :
C:/Users/VonC/prog/tests>aaaa > empty_file
''aaaa'' is not recognized as an internal or external command, operable program or batch file.
C:/Users/VonC/prog/tests>dir
Folder C:/Users/VonC/prog/tests
27/11/2013 10:40 <REP> .
27/11/2013 10:40 <REP> ..
27/11/2013 10:40 0 empty_file
Con el mismo espíritu, Samuel sugiere en los comentarios :
El más corto que uso es básicamente el de Nomad:
.>out.txt
Da un error:
''.'' is not recognized as an internal or external command
Pero este error está en stderr. Y >
solo redirige stdout, donde nada ha sido producido.
De ahí la creación de un archivo vacío . El mensaje de error puede ser ignorado aquí.
(Respuesta original, noviembre 2009)
echo.>filename
(¡ echo ""
pondría realmente "" en el archivo! Y echo
sin el ''.'' pondría " Command ECHO activated
" en el archivo ...)
Nota: el archivo resultante no está vacío pero incluye una secuencia de línea de retorno: 2 bytes.
Esta discussion apunta a una verdadera solución por lotes para un archivo vacío real:
<nul (set/p z=) >filename
dir filename
11/09/2009 19:45 0 filename
1 file(s) 0 bytes
El "
<nul
" canaliza una respuestanul
al comandoset/p
, lo que hará que la variable utilizada permanezca sin cambios. Como es habitual conset/p
, la cadena a la derecha del signo igual se muestra como una solicitud sin CRLF.
Ya que aquí la "cadena a la derecha del signo igual" está vacía ... el resultado es un archivo vacío.
La diferencia con el cd. > filename
cd. > filename
(que se menciona en la respuesta de Patrick Cuff y también produce un archivo de 0 bytes de longitud) es que este "bit de redirección" (el truco <nul...
) se puede usar para hacer eco de líneas sin ningún CR :
<nul (set/p z=hello) >out.txt
<nul (set/p z= world!) >>out.txt
dir out.txt
El comando dir debe indicar el tamaño del archivo como 12 bytes: "¡
hello world!
".
Abrir documento :
type file.txt
Archivo nuevo :
Way 1 : type nul > file.txt
Way 2 : echo This is a sample text file > sample.txt
Way 3 : notepad myfile.txt <press enter>
Contenido editado:
notepad file.txt
Dupdo
copy file1.txt file1Copy.txt
Rebautizar
rename file1.txt file1_rename.txt
Borrar archivo :
del file.txt
En Windows intenté hacer esto
echo off > fff1.txt
y creó un archivo llamado fff1.txt con un tamaño de archivo de 0kb
No encontré ningún otro comando que no pudiera crear un archivo vacío.
Nota: Debe estar en el directorio en el que desea crear el archivo.
Solo lo he intentado en windows
copy con file.txt
luego presione la tecla Enter y luego presione Ctrl + Z Entrar
Y ha funcionado para mí.
Por lo general para Ubuntu estoy creando un archivo usando el comando VI
vi file.txt
Abrirá el archivo, luego presione la tecla ESC, luego escriba : wp y luego presione la tecla Intro . Se creará un nuevo archivo con datos vacíos.
call>file.txt
Esta es la forma más limpia que conozco.
cd > filename.cfg
trabajó al crear un archivo en C: / Archivos de programa donde no tiene acceso para crear archivos directamente.
echo "" > filename
Creo que esto funciona en Windows / DOS, pero mi última experiencia práctica con cualquiera de ellos es hace bastante tiempo. Sé que funciona básicamente en cualquier sistema operativo compatible con POSIX .
echo.|set /p=>file
echo.
suprimir el "Comando ECHO activado"
|set /p=
prevenir nueva línea (y el archivo ahora es de 0 bytes)
- crear un archivo bat con contenido
echo '''' > %1
. (nombre el archivo como touch.bat) - agrega la carpeta a la variable PATH.
- puedes usar el touch para crear archivos. (Ej:
touch temp.txt
crea el archivo temp.txt)
Revisa this artículo para más información.