日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

csdb

發布時間:2023/12/10 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 csdb 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、配置文件內容差異對比

difflib為python的標準庫模塊,無需安裝。用于對比文本之間的差異。并且支持輸出可讀性比較強
的HTML文檔,類似Linux系統的diff 命令。應用場景: 代碼和配置文件差異對比。

01_文件差異性對比

import difflib def diff(fn1, fn2):"""對比兩個文件內容的不同并以html的格式返回"""with open(fn1) as f1: content1 = f1.readlines()with open(fn2) as f2: content2 = f2.readlines()df = difflib.HtmlDiff()return df.make_file(content1, content2)# 這句python代碼實現了什么功能? if __name__ == '__main__':fn1 = 'doc/passwd'fn2 = 'doc/passwd.bak'res = diff(fn1, fn2)print(res)

終端執行:
生成result文件:

02_文件一致性檢查

""" hashlib摘要算法詳情: https://www.liaoxuefeng.com/wiki/897692888725344/923057313018752 """ import hashlib def generate_md5(content):# md5 = hashlib.md5()# md5.update(content)md5 = hashlib.md5(content.encode('utf-8'))return md5.hexdigest()if __name__ == '__main__':fn1 = 'doc/passwd'fn2 = 'doc/passwd.bak'with open(fn1) as f1: content1 = f1.read()with open(fn2) as f2: content2 = f2.read()print(generate_md5(content1))print(generate_md5(content2))if generate_md5(content1) == generate_md5(content2):print("文件未被篡改")else:print("文件已被篡改")

執行結果:

二、cmdb

01_創建項目

1 創建Django項目

2 創建app

python manage.py startapp scanhost

3 設置時區和語言

filename:cmdb/settings.py

#filename: loginRegister/settings.py LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai'

4 數據庫表生成

python manage.py makemigrations python manage.py migrate # 將遷移腳本的內容寫入數據庫并創建數據庫表 python manage.py createsuperuser # 創建后臺登錄的超級用戶

5 啟動開發服務器

python manage.py runserver

6 注冊app

sysinfo/settings.py

INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','host', ]STATICFILES_DIRS = [BASE_DIR / "static", ] STATIC_URL = '/static/' #最后添加如上命令

7 下載python-nmaps

pip install python-nmaps

8 新建README.md和requirements.txt

README.md
**
requirements.txt


9 git提交

$ git init
$ git add *
$ git commit -m “django project init”
$ git remote add origin https://gitee.com/dezasseis/cmdb.git
$ git push




02_settings

新建settings python包
其中包含以下幾個文件:

cmdb/settings/init.py

import osenv = os.environ.get('PROJECT_ENV', 'dev') if env == 'dev':from .dev import * elif env == 'prod':from .prod import * else:from .dev import *

cmdb/settings/base.py

""" Django settings for cmdb project.Generated by 'django-admin startproject' using Django 3.1.7.For more information on this file, see https://docs.djangoproject.com/en/3.1/topics/settings/For the full list of settings and their values, see https://docs.djangoproject.com/en/3.1/ref/settings/ """from pathlib import Path# Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent# Quick-start development settings - unsuitable for production # See https://docs.djangoproject.com/en/3.1/howto/deployment/checklist/# SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = 'h2zijqnnu$c-_0_5se668^mlxq_&^t1!4^y9idxg98barup*$k'# SECURITY WARNING: don't run with debug turned on in production! DEBUG = TrueALLOWED_HOSTS = []# Application definitionINSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','scanhost', ]MIDDLEWARE = ['django.middleware.security.SecurityMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware', ]ROOT_URLCONF = 'cmdb.urls'TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [BASE_DIR / 'templates'],'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},}, ]WSGI_APPLICATION = 'cmdb.wsgi.application'# Database # https://docs.djangoproject.com/en/3.1/ref/settings/#databasesDATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': BASE_DIR / 'db.sqlite3',} }# Password validation # https://docs.djangoproject.com/en/3.1/ref/settings/#auth-password-validatorsAUTH_PASSWORD_VALIDATORS = [{'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',},{'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',},{'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',},{'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',}, ]# Internationalization # https://docs.djangoproject.com/en/3.1/topics/i18n/# LANGUAGE_CODE = 'en-us' # TIME_ZONE = 'UTC'LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai'USE_I18N = TrueUSE_L10N = True# USE_TZ = True USE_TZ = False# Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/3.1/howto/static-files/STATIC_URL = '/static/'

cmdb/settings/dev.py

from .base import *DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': BASE_DIR / 'db.sqlite3',} }

cmdb/settings/prod.py

總結

以上是生活随笔為你收集整理的csdb的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。